tag:blogger.com,1999:blog-103599732024-03-14T06:28:17.829+07:00Donga's .. memories ..สาระมาก, สาระน้อย ไปจนถึงไร้สาระ <br>
จำได้มั่ง ไม่ได้มั่ง ก็เอามาบันทึกไว้เท่าที่ได้ละกัน :P dongahttp://www.blogger.com/profile/14061304702900018286noreply@blogger.comBlogger33125tag:blogger.com,1999:blog-10359973.post-7161393669380780192011-12-25T16:42:00.000+07:002011-12-25T16:45:46.885+07:00คิดถึงชุมชนบนอินเทอร์เน็ตในอดีต<h6 class="uiStreamMessage" data-ft="{"type":1}" style="font-weight: normal;">
<span class="messageBody" data-ft="{"type":3}" style="font-size: small;">คิดถึง ThaiLinuxCafe.com คิดถึงเว็บชุมชนของไทยเราหลายๆ ที่ในอดีต<br /> <br /> เมื่อก่อนชุมชนคนใช้ลินุกซ์ไทย ไม่เคยต้องแบ่งค่าย ชอบค่ายไหน แบ่งปันและช่วยผู้ใช้ค่ายนั้นได<wbr></wbr><span class="word_break"></span>้ แจมได้ มั่วได้ในชุมชนเดียวกัน<br />
ทุกวันนี้ คลับเยอะแยะมากมายไปหมด ค่ายของตัวดีอย่างโน้น
ค่ายของตัวดีอย่างนี้ แจมไม่ค่อยได้ มั่วไม่ค่อยได้ กลายเป็นวัฒนธรรม
พวกเขา พวกเรา สื่อผ่านทางชุมชนบนอินเทอร์เน็ต<wbr></wbr><span class="word_break"></span> ชัดเจน<br /> <br /><span class="text_exposed_show"> ข้างบนนั่นแค่ตัวอย่างเฉพาะชุมช<wbr></wbr><span class="word_break"></span>นลินุกซ์ ไม่นับชุมชนอื่นๆ ของไทยเราที่อยู่บนอินเทอร์เน็ต<wbr></wbr><span class="word_break"></span>นี้ ไม่ว่าจะเป็น ชุมชนรถ ชุมชนมือถือ<br /> <br /> ยังไม่พอ แบ่งแยกกันให้ชัดเจนไปเลย ถ้าอยากแจม อยากมั่ว มาเป็นพวกเราเสียก่อน ... คลิกซะ Register<br /> <br /> ......</span></span></h6>
<h6 class="uiStreamMessage" data-ft="{"type":1}" style="font-weight: normal;">
<i><span class="messageBody" data-ft="{"type":3}" style="font-size: small;"><span class="text_exposed_show">ป.ล. Flickr ไม่ให้ทำฮอตลิงก์แล้วสินะ รูปเริปเก่าๆ ไม่โผล่กันเป็นแถว </span></span></i></h6>dongahttp://www.blogger.com/profile/14061304702900018286noreply@blogger.com29tag:blogger.com,1999:blog-10359973.post-85875242843248597242009-12-14T17:29:00.002+07:002009-12-14T17:48:14.741+07:00โฮมเธอเตี้ย - โฮมเธียเตอร์หาเหตุอัปเดทบล็อกซะหน่อย ภาคไร้สาระ<br /><br /><br /><center><span style="font-weight: bold;">โฮมเธอเตี้ย - โฮมเธียเตอร์</span><br /><br /><a href="http://farm3.static.flickr.com/2756/4183822583_8058cef783_o.jpg"><img src="http://farm3.static.flickr.com/2756/4183822583_394a973815.jpg" /></a></center><br /><br /><ul><br /><li>LCD TV - <a href=http://www.lge.com/th/tv-audio-video/televisions/LG-lcd-tv-42LH70YR.jsp>LG 42" 42LH70YR</a></li><br /><li>AV Reciever - <a href="http://us.marantz.com/Products/2514.asp">Marantz SR-5003</a></li><br /><li>Front Speaker - <a href="http://www.mordauntshort.com/ranges.php?RAID=12&Title=Avant+900i">Mordaunt Short Avant 902i</a> ต่อแบบ Bi-Amp</li><br /><li>Center Speaker - <a href="http://www.mordauntshort.com/ranges.php?RAID=12&Title=Avant+900i">Mordaunt Short Avant 905i</a></li><br /><li>Surround Speaker - <a href="http://www.mordauntshort.com/ranges.php?RAID=12&Title=Avant+900i">Mordaunt Short Avant 902i</a></li><br /><li>Active Sub woofer - <a href="http://www.yamaha.co.th/Audio/speaker/yst-sw015.html">YAMAHA YST-SW015</a></li><br /><li>DVD Player - <a href=http://www.p4c.philips.com/cgi-bin/dcbint/cpindex.pl?ctn=DVP5286K/98&scy=th&slg=th&mid=Link_Software>Philips DVP5286/K</a> อ่านแผ่นไม่ได้ยินดีคืนเงิน (ว่างั้น :-)</li><br /><ul><br /></ul></ul><br /><br />กำลังดูวอลเลย์บอลเอเซียนเกมส์ที่ลาวอยู่ :-)dongahttp://www.blogger.com/profile/14061304702900018286noreply@blogger.com306tag:blogger.com,1999:blog-10359973.post-37842091161921535812009-05-12T16:06:00.003+07:002009-05-12T16:17:43.050+07:00ยินดีต้อนรับ Qt Public Repository , เย้....!!!จากเดิมที่<span style="font-weight: bold;"> </span><a style="font-weight: bold;" href="http://www.qtsoftware.com/about/news/lgpl-license-option-added-to-qt">Nokia ได้ทำการปล่อย QT ให้มีสัญญาอนุญาตแบบ LG</a><a style="font-weight: bold;" href="http://www.qtsoftware.com/about/news/lgpl-license-option-added-to-qt">PL</a> เพิ่มเข้ามาด้วย และได้สัญญาไว้ว่าจะจัดทำ Repository ไว้ให้นักพัฒนาได้เข้ามามีส่วนร่วมในการพัฒนา Qt ได้อย่างสะดวกมากขึ้นนั้น<br /><br />บัดนี้ ... ได้เวลาอันเป็นมงคลแล้ว<br /><span style="font-weight: bold;">ขอต้อนรับ <a href="http://qt.gitorious.org/">Qt Public Repository</a> ครับ</span> เย้ ๆ เชิญแวะเยี่ยมชม และเข้ามามีส่วนร่วมกันได้แล้วครับ<br />โอ้ว เย...<br /><a href="http://qt.gitorious.org/"><br /><img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 400px; height: 252px;" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiWyaVOjqUYeM3n0HMNDwyuORHYqJ5OE5COsPHQGS-fEDLarYJa-9NDuqFccJ1XAmgetwITiZGjdkYAOazb9O_WAH9iAkiuDzpveJF78DPKS42fS-6a7aA_NE0ujmi9_RkLeQa8/s400/qtgitorious.png" alt="" id="BLOGGER_PHOTO_ID_5334863127909676994" border="0" /><br /></a><br />;-D<br /><br /><span style="font-weight: bold;">ที่มา</span>: <a href="http://labs.trolltech.com/blogs/2009/05/11/qt-public-repository-launched/">บล็อก QT's lab</a>dongahttp://www.blogger.com/profile/14061304702900018286noreply@blogger.com1tag:blogger.com,1999:blog-10359973.post-11672647281660399282009-03-07T10:28:00.004+07:002009-03-07T11:09:52.053+07:00ฟ้องด้วยภาพ<center><br />เนื่องในโอกาสที่ <a href="http://qtsoftware.com/qt/">Qt 4.5</a> ได้ออกตัวจริงแล้ว,<br /><a href="http://kde.org/announcements/announce-4.2.1.php">KDE 4.2.1</a> ตัวจริงก็ออกมาแล้วเช่นกัน<br /><br />เลยจับมาลอง <a href="http://acid3.acidtests.org/">Acid3 Test</a> ซะหน่อย<br /><br /><a href="http://farm4.static.flickr.com/3540/3334659682_38bab5ac80_o.png"><br /><img src="http://farm4.static.flickr.com/3540/3334659682_dbc3615a44.jpg"><br /></a><br /><a href="http://arora-browser.org/">Arora 0.5</a> ซึ่งใช้ QtWebkit เป็นกลไกเบื้องหลัง ปะทะกับ <a href="http://en-us.www.mozilla.com/en-US/firefox/">FireFox 3.0.6</a><br /><br /><br /><a href="http://farm4.static.flickr.com/3607/3334659684_b26f8d3438_o.png"><br /><img src="http://farm4.static.flickr.com/3607/3334659684_a68ac47fc2.jpg"><br /></a><br />Konqueror 4 ใช้ KHTML เป็นกลไกเบื้องหลัง<br /><br /><br /><a href="http://farm4.static.flickr.com/3403/3334659690_2e90e936a9_o.png"><br /><img src="http://farm4.static.flickr.com/3403/3334659690_a0d216768e.jpg"><br /></a><br />Konqueror 4 ใช้ Kde Webkit Part เป็นกลไกเบื้องหลัง<br /><br /><br />สรุปกันเอาเองครับ ฟ้องด้วยภาพ....<br /></center>dongahttp://www.blogger.com/profile/14061304702900018286noreply@blogger.com1tag:blogger.com,1999:blog-10359973.post-77553493575835803022009-01-14T16:40:00.004+07:002009-01-14T16:50:29.550+07:00โนเกียจะปล่อย Qt ให้มีสัญญาอนุญาตแบบ LGPL v2.1เห็นแล้วมีเฮเลยครับ (ตอนแรกอึ้งหน่อย ๆ :p) เพราะว่า<a href="http://labs.trolltech.com/blogs/2009/01/14/nokia-to-license-qt-under-lgpl/">โนเกียจะปล่อย Qt ให้มีสัญญาอนุญาตแบบ LGPL 2.1</a> <br /><br />ซึ่งผู้เขียนข่าวนั้นเชื่อถือได้อย่างแน่นอน นั่นคือคุณ <a href="http://labs.trolltech.com/blogs/author/snystrom/">Sebastian Nyström</a> ซึ่งมีตำแหน่งเป็น Vice President ของ Qt Software ของโนเกียเป็นผู้เขียนข่าวเองเลย<br /><br />ทั้งนี้จะมีผลกับ Qt รุ่น 4.5 เป็นต้นไป พร้อมกันนี้ยังจะมีการเตรียม Repository ต้นฉบับของ Qt ไว้ให้นักพัฒนาสามารถเข้ามามีส่วนร่วมได้อย่างสะดวกมากขึ้นอีกด้วย<br /><br /><br /><br />รายละเอียดอ่านเพิ่มเติมได้จากที่มาครับ<br /><br /><br /><br />ที่มา: <a href="http://labs.trolltech.com/blogs/2009/01/14/nokia-to-license-qt-under-lgpl/">labs.trolltech.com</a>dongahttp://www.blogger.com/profile/14061304702900018286noreply@blogger.com0tag:blogger.com,1999:blog-10359973.post-52215306871939503562008-07-23T16:20:00.002+07:002008-07-23T16:26:12.764+07:00Qt-4.4 HarfBuzz libthai patchจริง ๆ แล้วผมไล่ส่งบล็อกนี้เข้า thai-linux-foss-devel ณ googlegroups.com ด้วยจีแมวมาก่อนแล้ว<br><br />แต่ส่งยังไง ๆ ก็ส่งไม่ได้<br><br />โพสต์ผ่านหน้าเว็บของกลุ่มก็ยังไม่ได้อีก ฮ่วย -_-'<br><br /><br><br />จำต้องเอามาลงไว้ที่บล็อก - -!<br><br /><br><br />หลังจากนั่งปลง ๆ เรื่องตามแปล l10n ของ KDE 4.1 เพราะใกล้วันที่ KDE 4.1 จะออกเต็มทีแล้ว<br><br />เพราะเยอะซะเหลือเกิน และที่เหลือก็เป็นประโยคที่เริ่มซับซ้อนขึ้นเรื่อย ๆ :P<br><br />เมื่อวานเลยมานั่งไล่ harfbuzz ใน qt 4.4 ดูให้หายเซ็ง<br><br />ปรากฏว่าฟลุ้คแก้ให้มันตัดคำกับ libthai ได้ครับ<br><br />เลยเอามาให้ช่วยกันลองดู ช่วยกันหาบั๊ก รวมทั้งช่วยแก้ไขจุดที่ผมพลาด ๆ ด้วยละกัน<br><br />โค้ดผมใช้ dlopen เพื่อโหลดไลบรารีนะครับ<br><br />แต่ว่ายังไม่รู้ว่าจะไปดักการเลิกใช้ไลบรารี<br><br />เพื่อเรียก dlclose ตอนไหน เลยไม่แน่ใจว่าจะส่งผลต่อหน่วยความจำมากหรือเปล่า<br><br />(ตอนแรกก็เขียนให้ลิงค์กับ libthai โดยตรง แต่ดู ๆ แล้วแบบ dynamic load<br><br />จะทำให้ไม่ต้องแก้ซอร์สที่นำไปใช้มากนัก)<br><br /><br><br />ทั้งนี้ KHTML ยังต้องพึ่ง libthai.la อยู่นะครับ ผมยังไม่ได้ตามไปไล่ดู<br><br />ว่าถ้าตัดออกแล้วมันจะมาใช้ harfbuzz เหมือนกันหรือเปล่า<br><br /><br><br /><b>แพตช์ ชื่อไฟล์ <br /><a href="http://thai-linux-foss-devel.googlegroups.com/web/qt-x11-4.4.0-harfbuzz_thai.patch?gda=_mwbCFEAAACBSYoOZiE1NJK1riBN1kMGxApBxet3vWRmExf_iGsXY2G1qiJ7UbTIup-M2XPURDSQD7JB1kVHppsGh-1TPKvcaGxWTKNp8VmrbRvPZ8fhuZW00ogsfG3TlMNzTTgXol8">qt-x11-4.4.0-harfbuzz_thai.patch</a></b><br><br><br />เอาไปช่วย ๆ กันทดสอบ ทดลอง แก้ไข กันนะครับ<br />พร้อมกันนี้ก็รอผู้เกี่ยวข้องมาตรวจสอบ และส่งเข้าต้นน้ำตามลำดับ<br><br /><br><br><br /><center><br /><b>KDE 4.1RC1 on Qt 4.4 - Screen shot:</b><br><br><br /><img src=http://farm4.static.flickr.com/3153/2695354848_287b88244b_o.png><br><br><br /><img src=http://farm4.static.flickr.com/3019/2695354846_558b8065f9_o.png><br><br><br /><img src=http://farm4.static.flickr.com/3094/2695354838_820f4992e4_o.png><br><br><br /><img src=http://farm4.static.flickr.com/3008/2695354832_5a15cd21ee_o.png><br><br><br /></center><br /><br>dongahttp://www.blogger.com/profile/14061304702900018286noreply@blogger.com0tag:blogger.com,1999:blog-10359973.post-19087546772164831922008-07-07T21:18:00.000+07:002008-07-07T21:35:26.633+07:00พัสดุจากเยอรมันได้รับเมื่อตอนเย็น ๆ หลังเลิกงานนี่เอง<br /><br /><br /><center><br /><a href=http://farm4.static.flickr.com/3074/2646247510_3007615eaa_o.jpg><br /><img src=http://farm4.static.flickr.com/3074/2646247510_9a19bf4037.jpg></a><br /><br>หน้าตากล่อง ใหญ่เอาเรื่อง<br /></center><br /><br><br /><br><br /><center><br /><a href=http://farm4.static.flickr.com/3016/2646247518_b982ab7082_o.jpg><br /><img src=http://farm4.static.flickr.com/3016/2646247518_ef9ec70295.jpg></a><br /><br><b>อ่าฮะ openSUSE 11.0 Retail Box!!!!</b> สวยมาก สวยจริง ๆ ฮี่ ๆ :-D<br /></center><br /><br><br /><br><br /><center><br /><a href=http://farm4.static.flickr.com/3034/2646247534_7c3afbb1d6_o.jpg><br /><img src=http://farm4.static.flickr.com/3034/2646247534_ed937afcf7.jpg></a><br /><br>ดูด้านหลังของกล่องมั่ง<br /></center><br /><br><br /><br><br /><center><br /><a href=http://farm4.static.flickr.com/3034/2646258856_e152024c31_o.jpg><br /><img src=http://farm4.static.flickr.com/3034/2646258856_d7d1c32585.jpg></a><br /><br>ข้างในกล่อง ประกอบไปด้วยแผ่นดีวีดี 9 หนึ่งแผ่น และคู่มือหนึ่งเล่ม :P<br /></center><br /><br><br /><br><br /><center><br /><a href=http://farm4.static.flickr.com/3133/2646258866_6f0db686a0_o.jpg><br /><img src=http://farm4.static.flickr.com/3133/2646258866_656aeba2f4.jpg></a><br /><br>เขียวอื๋ออออ ฮี่ ๆ ๆ<br /></center><br /><br><br /><br><br /><center><br /><a href=http://farm4.static.flickr.com/3037/2646258874_c1a5fffcdf_o.jpg><br /><img src=http://farm4.static.flickr.com/3037/2646258874_7e23925e10.jpg></a><br /><br>อ๊ะ .. เกือบไม่เห็น มันแทรกอยู่กับแผ่นพับ สติกเกอร์งาม ๆ ไว้ติดเครื่องครับ :D<br /></center><br /><br><br /><br><br /><br />หมดละ ทุกภาพอาจมิชัดเจนนัก เพราะใช้มือถือถ่าย แฮ่ ๆdongahttp://www.blogger.com/profile/14061304702900018286noreply@blogger.com2tag:blogger.com,1999:blog-10359973.post-41400941766652406602008-04-06T19:32:00.001+07:002008-04-06T19:54:22.160+07:00KDE4.1-svn กับ compiz - kde4-window-decoratorตั้งแต่เปลี่ยนมาใช้ KDE4.1-svn ได้ร่วมเดือนแล้วก็ติดปัญหาหลาย ๆ อย่างที่ตัวจัดการหน้าต่าง (kwin) ของ KDE4.1 มันยังไม่ได้ดังใจ เช่น <br /><br /><br />- ส่วนตัวแล้ว ถ้าขาดลูกเล่น Composite แล้วหงุดหงิด แบบเป็นคนติด Eye Candy อ่ะ :p<br /><br />- ลูกเล่น Composite ของหน้าต่างยังอืด ๆ ทำงานช้า และบางทีก็ทำให้ KDE freeze ไปซะเฉย ๆ<br /><br /><br /><br />เลยจำเป็นต้องหันมาใช้ compiz-fusion เจ้าเก่าเจ้าเดิม ที่ทำงานได้ดีบน KDE 4.0.x โดยตอนนั้นผมเลือกใช้ kde4-window-decorator เป็น WM เจ้าประจำ<br /><br />ครั้นพอเปลี่ยนมาใช้ KDE4.1-svn ก็ปรากฏว่า เจ้า kde4-window-decorator ดันมีปัญหากับ KDE4.1 เสียแล้ว<br /><br /><br /><br />- ถ้าเปิดหน้าต่างตั้งแต่ 2 หน้าต่างขึ้นไป จะไม่สามารถสลับหน้าต่างผ่านการคลิกเมาส์บนหัวหน้าต่างได้<br /><br />- คลิกแล้วมันกลายเป็นการปรับขนาดหน้าต่างของตัวหน้าต่างที่ได้รับโฟกัสเป็นตัวแรกแทนซะงั้น<br /><br />- ไล่ ๆ ดูบนอินเทอร์เน็ต ไม่พบคำตอบ แม้กระทั่งบนเว็บไซต์ของ compiz-fusion เอง ฤาจะไม่มีคนใช้ kde4-window-decorator กับ KDE 4.1-svn ???<br /><br />- ตามไปถามใน IRC ทั้งที่ห้อง KDE และห้อง compiz ฝรั่งก็ตอบไม่ได้ (ไม่มีใครใช้แบบผม ???)<br /><br /><br /><br />ถ้าให้เดาผมว่าน่าจะเป็นบั๊กที่ไลบรารีของ KDE 4.1 มากกว่า ก็ไปแจ้งให้ผู้พัฒนา KDE ทราบบน IRC แล้ว ตั้งแต่ 2 อาทิตย์ก่อน ไม่รู้เค้าลองหรือยังเห็นบอกว่ากำลังคอมไพล์ :-P<br /><br /><br /><br />มันคันมันคาใจ พอแจ้งเสร็จก็เลยไล่แก้เองซะ แก้ที่ตัว kde4-window-decorator ของ compiz-fusion มันนี่แหละ ง่ายดีแต่ลืมมาบล็อกไว้ เผื่อมีคนอยากใช้อย่างผม<br /><br />ผมแก้ที่ไฟล์ kde/window-decorator-kde4/decorator.cpp ในต้นฉบับของ compiz แก้แบบไม่เอาความสมบูรณ์เอาพอใช้ได้:-P ได้ผลลัพธ์ออกมาเป็นแพตช์ดังนี้ (ใช้กับ compiz-0.7.2)<br /><br /><br /><br /><pre><br />diff -uNr compiz-0.7.2.orig/kde/window-decorator-kde4/decorator.cpp compiz-0.7.2/kde/window-decorator-kde4/decorator.cpp<br />--- compiz-0.7.2.orig/kde/window-decorator-kde4/decorator.cpp 2008-02-05 23:06:18.000000000 +0700<br />+++ compiz-0.7.2/kde/window-decorator-kde4/decorator.cpp 2008-04-06 19:32:19.000000000 +0700<br />@@ -598,10 +598,23 @@<br /> xbe2.x = xbe->x - child->pos ().x ();<br /> xbe2.y = xbe->y - child->pos ().y ();<br /> }<br />-<br />- QApplication::x11ProcessEvent ((XEvent *) &xbe2);<br />-<br />- return true;<br />+ bool chk = xbe->button==1 && (xbe->x == xbe2.x && xbe->y == xbe2.y);<br />+ if (client->activeChild() != child) client->setActiveChild(child);<br />+ if (chk)<br />+ {<br />+ Qt::MouseButton mouseBtn = xbe->button==1 ? Qt::LeftButton : (xbe->button==3 ? Qt::RightButton : Qt::NoButton);<br />+ QPoint qp2 (xbe2.x, xbe2.y);<br />+ QMouseEvent qme (xevent->type==ButtonPress ? QEvent::MouseButtonPress : QEvent::MouseButtonRelease,<br />+ qp2,<br />+ mouseBtn,<br />+ mouseBtn,<br />+ Qt::NoModifier);<br />+ QApplication::sendEvent (child, &qme);<br />+ return false;<br />+ }<br />+ else {<br />+ return QApplication::x11ProcessEvent ( (XEvent *) &xbe2);<br />+ }<br /> }<br /> } break;<br /> case ClientMessage:<br /></pre><br /><br /><br />โดยยังมีบั๊กอยู่คือ<br /><br />- ไม่ตอบสนองการดับเบิลคลิกที่หัวหน้าต่าง<br /><br />- เมนูผุดจากการคลิกเมาส์ปุ่มขวาจะไม่แสดงค้างถ้าปล่อยปุ่มเมาส์ ต้องคลิกขวาค้างไว้เพื่อเรียกเมนู<br /><br />- อื่น ๆ ที่ยังไม่รู้<br /><br /><br /><br />เอาเป็นว่าผมได้ Eye Candy คืนมาละ ในขณะที่ยังได้ใช้กรอบหน้าต่างแบบ Oxygen ต่อไปได้อีกด้วย โฮ่ะ ๆ ๆ <br /><br />พอใจแล้ว ไม่แก้เพิ่มแล้ว ไม่มีเวลา ใครว่าง ๆ แก้ให้สมบูรณ์ด้วยก็ดีครับ โค้ดยังห่วยเลยไม่ส่งกลับ compiz ขออภัย ลอล<br />dongahttp://www.blogger.com/profile/14061304702900018286noreply@blogger.com1tag:blogger.com,1999:blog-10359973.post-42764380387242530752008-04-06T01:21:00.001+07:002008-04-06T01:44:43.831+07:00Amarok SVN rev.793903 2008/04/06ใช้ Amarok 2.0 alpha ตัว svn เดิม (rev ไหนหว่า จำมิได้แล้ว) มาพักนึงรู้สึกบั๊กยังเพียบ ๆ<br /><br />ประกอบกับตอนนี้คำแปล Amarok ที่<a href=http://drrider.blogspot.com/>คุณหมอไรเดอร์</a> แปลไว้ใช้กับ KDE 3.5.x มันมีคำเพิ่มขึ้นมาอีกพอสมควร แล้วก็มี fuzzy อีกหนึ่งกระบุง<br /><br />เลยลองไล่ ๆ แก้แล้วก็แปลเพิ่ม แต่ว่าคำมันไม่ตรงกับ Amarok ตัวที่ผมใช้อยู่อีกเยอะ ก็เลยดึงของสดมาจาก <a href=http://websvn.kde.org/trunk/extragear/multimedia/amarok/>Amarok SVN</a> เช่นเคย<br /><br />ก็ปรากฏว่าคำแปลตรง ใช้ไล่แปลต่อได้ หึหึ<br /><br /><br />ไหน ๆ ก็ลองของสดแล้วก็เอามาให้ดูกันดีกว่าว่าของสด (svn-rev793903-20080406) มันเปลี่ยนอะไรไปมั่ง<br /><br /><br /><ul><br /><li>มีแอพเพล็ตของพลาสมาเพิ่มเข้ามาแล้วหลายตัว.... </li><br /><li>แต่ (ดูภาพด้านล่างประกอบ) มันมืดตึ๊บ ดูไม่เห็นตัวหนังสือเลยน่ะสิ -_-!! </li><br /><li>แสดงภาษาไทยในรายการเล่นได้เมื่อเพิ่มเพลง แต่....</li><br /><li>เมื่อออกจากโปรแกรมแล้วเรียกโปรแกรมใหม่ มันดันแสดงเป็นตัวอะไรก็ไม่รู้ อ่านไม่ออก</li><br /><li>บั๊กอีกกองพะเนิน สมแล้วที่ยังเป็น Alpha หึหึ</li><br /></ul><br /><br /><br/><br /><br/><br /><br /><center><br /><a href=http://farm3.static.flickr.com/2393/2389609897_ec5e5ce3f3_o.png><br /><img src=http://farm3.static.flickr.com/2393/2389609897_67b6a7b047.jpg></a><br /></center><br /><br /><br /><br /><br /><br />:-)dongahttp://www.blogger.com/profile/14061304702900018286noreply@blogger.com0tag:blogger.com,1999:blog-10359973.post-24210654526444955102008-04-06T01:12:00.000+07:002008-04-06T01:20:26.269+07:00Qt4.4-beta แพตช์ภาษาไทยถูกย้ายแจ้งไว้ที่ <a href=http://groups.google.co.th/group/thai-linux-foss-devel/>Thai Linux/FOSS developers</a> แล้ว<br /> <br /><br />เนื่องจากตอนนี้ผมใช้แพตช์ที่ <br /><a href=http://linux.thai.net/viewvc/viewvc.cgi/software/qt/x11-free-4.3.1/>http://linux.thai.net/viewvc/viewvc.cgi/software/qt/x11-free-4.3.1/</a><br /><br />มาใช้กับ Qt4.4 beta ไม่ได้เสียแล้ว เนื่องจากไฟล์ src/gui/text/qscriptengine.cpp มันไม่มีอยู่แล้ว -_-'<br /><br />ไล่ตามไปดูเห็นพวกการเรนเดอร์ฟอนต์ภาษาต่าง ๆ ถูกย้ายไปที่src/3rdparty/harfbuzz กันหมดแล้ว <br /> <br />และไม่ถูกคอมไพล์รวมเข้ากับ Qt ซะด้วย เฮ้อ...<br /><br /> <br /> <br />ไล่แปล KDE4.1-l10n-th ก็กินเวลาผมแทบหมดแล้ว ไหนตอนนี้ยังต้องเร่ง openSUSE-l10n ให้ทันก่อนออกรุ่น 11.0 ด้วย เฮ้ออออ (อีกที) <br /><br /><br /><br />เอาใจช่วยทีมคุณอ๊อทให้แก้ได้ไว ๆ ครับ ผมรอใช้อยู่เน้อ แหะ ๆdongahttp://www.blogger.com/profile/14061304702900018286noreply@blogger.com0tag:blogger.com,1999:blog-10359973.post-46349293113303622952008-03-25T21:03:00.002+07:002008-03-25T21:34:21.354+07:00digiKam 0.10-svn for KDE4.x, YO!!ตามแปล l10n ของ KDE4.1 แล้วไม่มีโปรแกรมใช้เพื่อดูว่าคำที่แปลอยู่ถูกที่ถูกทางหรือเปล่านี่เรื่องใหญ่<br><br />ยิ่งตัว digiKam นี่ รายการข้อความให้แปลนี่เยอะมาก ๆ เยอะกว่ารุ่น 0.9.3 เพียบเลย<br><br />เลยขอเอามาลองดูหน่อยดิ๊ ว่าใช้กับ KDE4.1 (svn) ได้เนียนหรือยัง<br><br /><br><br />หลังจากเช็คเอาต์แฟ้มจาก svn ของ KDE เรียบร้อยแล้ว<br><br />ก็จัดการคอมไพล์ ใช้เวลาค่อนข้างนานเหมือนกัน<br><br />ติดตั้งแล้วได้โปรแกรมมา 2 ตัว digiKam กับ showFoto <br><br />showFoto นี่เป็นเหมือนกับ KDE Part สำหรับดูรูปเอาไว้ฝังรวมกับ digiKam ได้ตอนแสดงภาพ<br><br />แต่ไม่ขอพูดถึงละกันเพราะใช้ digiKam ก็ได้ showFoto ฝังมาในตัวอยู่แล้ว (แต่ showFoto ทำงานอิสระได้นะ)<br><br><br />จากนั้นก็ทดลองใช้งาน digiKam<br /><br><br><br /><b>สัมผัสแล้ว</b><br><br />- น่าใช้ขึ้นมากครับ ขนาดยังไม่เป็นประกาศเป็นตัว alpha เลย แต่ให้ความรู้สึกว่าทำงานได้เร็วขึ้นกว่ารุ่น 0.9.3 พอสมควร<br><br />- บั๊กยังมีอยู่เยอะพอสมควร ใช้ ๆ ไปก็แครชเอาดื้อ ๆ ก็หลายรอบอยู่เหมือนกัน<br><br />- ปลั๊กอิน Kipi ยังพอร์ตมาไม่เต็มร้อย ทำให้ขาดความสามารถหลาย ๆ อย่างที่เคยมีในรุ่นเก่า <br><br />- รวม ๆ แล้วชอบครับ ถ้ารีลีสแล้วคงแจ๋วกว่านี้แน่นอน ชอบ ๆ ๆ :-D<br /><br /><br><br><br />ดูรูปกันไปพลาง ๆ ครับ<br /><br><br><br /><center><br /><a href=http://farm3.static.flickr.com/2031/2360524693_8500ff7906_o.png><br /><img src=http://farm3.static.flickr.com/2031/2360524693_dfeecde898.jpg></a><br><br><br /><br /><a href=http://farm3.static.flickr.com/2082/2360526379_eeb489c65b_o.png><br /><img src=http://farm3.static.flickr.com/2082/2360526379_37414cab79.jpg></a><br><br><br /><br /><a href=http://farm4.static.flickr.com/3179/2361361054_ae6b442e52_o.png><br /><img src=http://farm4.static.flickr.com/3179/2361361054_9cf85765ab.jpg></a><br><br><br /><br /><a href=http://farm4.static.flickr.com/3197/2360530053_7c2d656d43_o.png><br /><img src=http://farm4.static.flickr.com/3197/2360530053_547dd5c3da.jpg></a><br><br><br /><br /><a href=http://farm3.static.flickr.com/2266/2361366600_ccec9a50ea_o.png><br /><img src=http://farm3.static.flickr.com/2266/2361366600_7eff23048e.jpg></a><br><br><br /><br /><a href=http://farm3.static.flickr.com/2154/2361369652_2ab097235f_o.png><br /><img src=http://farm3.static.flickr.com/2154/2361369652_ed817faec9.jpg></a><br><br><br /><br /><a href=http://farm3.static.flickr.com/2136/2361374422_0c3136fa52_o.png><br /><img src=http://farm3.static.flickr.com/2136/2361374422_194d5e0017.jpg></a><br><br><br /><br /></center>dongahttp://www.blogger.com/profile/14061304702900018286noreply@blogger.com0tag:blogger.com,1999:blog-10359973.post-37858270935922940942008-03-13T11:44:00.002+07:002008-03-13T12:03:15.458+07:00Konqueror 4.1 - KDE4.1 with TLWG ThaiFonts-Scalableเพิ่งจะมาสังเกตุจริง ๆ จัง เมื่อติดตั้ง Konqueror 4.1 บน KDE 4.1 (รุ่นจริง 4.0.65 - 20080305svn)<br><br />พบว่าการแสดงผลภาษาไทยที่มีสระบนหรือล่างร่วมกับวรรณยุกต์มันเพี้ยน ๆ ส่วนใหญ่เป็นกับแบบอักษรในชุด TLWG ThaiFonts-Scalable เสียด้วย -_-<br /><br><br><br /><br />เริ่มกันที่ฟอนต์ Lucida Sans ที่มากับ Sun's Java Runtime ไม่เพี้ยน<br /><img src=http://farm4.static.flickr.com/3215/2330650752_c30419bb1b_o.png><br /><br><br><br /><br />ต่อกันด้วย Garuda อันนี้เพี้ยนละ สังเกตุคำว่า รองรับอยู่ภายใน นะครับ<br /><img src=http://farm4.static.flickr.com/3211/2329825407_70ce720e0f_o.png><br /><br><br><br /><br />ตามมาด้วย Loma เช่นกัน สังเกตุคำว่า รองรับอยู่ภายใน ครับ<br /><img src=http://farm4.static.flickr.com/3267/2329825723_8f83aa46c3_o.png><br /><br><br><br /><br />ตามมาด้วย Norasi เพี้ยนเช่นกัน<br /><img src=http://farm3.static.flickr.com/2194/2330651638_488373ca62_o.png><br /><br><br><br /><br />ตามมาด้วย Sawasdee อันนี้ไม่เพี้ยนแฮะ -_-a<br /><img src=http://farm3.static.flickr.com/2027/2329826237_5f29a2e99e_o.png><br /><br><br><br /><br />ตามมาด้วย Umpush เพี้ยนอีกละ<br /><img src=http://farm3.static.flickr.com/2391/2330652356_1a98498253_o.png><br /><br><br><br /><br />ปิดท้ายด้วย Waree เพี้ยนเช่นกัน<br /><img src=http://farm3.static.flickr.com/2089/2330653098_4932a7d3cf_o.png><br /><br><br><br /><br />จริง ๆ แล้วบน KDE 4.0.x ก็คงเป็นเหมือนกัน แต่ผมไม่ค่อยได้สังเกตุ เลยไม่มีหลักฐานมายืนยัน :-P<br />เดี๋ยวขอตรวจสอบ l10n ดูก่อนว่าลำดับ สระ - วรรณยุกต์ถูกต้องหรือเปล่า<br /><br>dongahttp://www.blogger.com/profile/14061304702900018286noreply@blogger.com2tag:blogger.com,1999:blog-10359973.post-1147487603545503172006-05-13T09:23:00.000+07:002006-05-13T09:37:18.073+07:00SUSE Linux 10.1 GM - RELEASEDหลังจากออกตัวเบต้ามาให้ครึ่ด ตัว RC ก็ล่อมาถึง RC5 (RC4 กับ 5 แก้ไขภายใน ไม่มีให้ดาวน์โหลด)<br />และแล้วตัวจริง <a href=http://www.opensuse.org><b>SUSE Linux 10.1 GM</b></a> ก็ออกมาแล้วครับเมื่อวันที่ 11 พ.ค.2549<br /><br />สำหรับรุ่นนี้ไม่คลาดเคลื่อนจากที่ได้ติดตามตัว RC มากมายอะไรเลย แทบไม่เปลี่ยนด้วยซ้ำโดยจะเป็นการแก้บั๊กเล็ก ๆ น้อย ๆ บางตัวที่พบในตัว RC เท่านั้นครับ<br /><br/><br /><b><br /><br/>ฟีเจอร์หลัก ๆ (ที่อาจจะไม่สะดุดตานัก) ก็ได้แก่<br /> <ul><br /><li><a href=http://www.kernel.org/>kernel</a> 2.6.16.13 แพตช์มาเต็มเหยียดตามสไตล์ของ SUSE</li><br /><li><a href=http://gcc.gnu.org/>gcc 4.1.0</a></li><br /><li><a href=http://www.gnu.org/software/libc/libc.html>glibc 2.4</a></li><br /><li><a href=http://xorg.freedesktop.org/>X.org 6.9.0</a></li><br /><li><a href=http://www.freedesktop.org/Software/Xgl>Xgl</a> & <a href=http://www.freedesktop.org/Software/compiz>compiz</a> ตัวต้นเดือน 5 (CVS)</li><br /><li><a href=http://www.gnome.org/>GNOME 2.12</a> (ตามคาดหมาย อด 2.14)</li><br /><li><a href=http://www.kde.org/>KDE 3.5.1</a> (อีกแหละตามคาดหมาย อด 3.5.2)</li><br /><li><a href=http://www.xfce.org/>Xfce 4.2.3</a> (เข้าใจว่ามีในรุ่น DVD เท่านั้น ต้องดาวน์โหลดแยก)</li><br /><li><a href=http://www.openoffice.org/>OpenOffice.org 2.0.2</a> & <a href=http://www.koffice.org/>KOffice 1.4.2</a></li><br /><li><a href=http://www.mozilla.org/>Mozilla Firefox</a> รุ่นล่าสุด 1.5.0.3</li><br /><li>และเช่นเคย ตัดความสามารถของโปรแกรมที่ไม่ใช่ GPL หรือ OSS ออกไปทั้งหมด เนื่องจากปัญหาเรื่องสิทธิบัตร ดังนั้นต้องคอมไพล์เองหรือพึ่งพี่ packman</li><br /></ul><br /></b><br /><br />ดาวน์โหลดได้ที่ <a href=http://download.opensuse.org/distribution/SL-10.1/>เวบไซต์ OpenSUSE</a> เชิญครับ ;)dongahttp://www.blogger.com/profile/14061304702900018286noreply@blogger.com4tag:blogger.com,1999:blog-10359973.post-1144681384539140722006-04-10T21:58:00.000+07:002006-04-10T22:03:05.136+07:00เว้นวรรคเคลียร์งาน เคลียร์งาน เคลียร์งาน เว้นวรรคเพื่อเคลียร์งาน<br />กลางเดือนหน้าย้ายที่ทำงานใหม่ (อีกแล้ว เปลี่ยนงานยังกะเด็กจบใหม่ :P)<br />รอบนี้ไปที่สมุทรปราการ สอบถามมามีทั้ง Sun มีทั้ง Linux มีทั้ง Mac และไม่พลาด มี Windows ด้วย :P<br />โอ้ววว สวรรค์หรือเปล่านี่ (ภาวนาขอให้เป็นสวรรค์ โย่วว)<br /><br />ดังนั้น ขอเว้นวรรคยาว ๆ อีกทีครับ แหะๆdongahttp://www.blogger.com/profile/14061304702900018286noreply@blogger.com2tag:blogger.com,1999:blog-10359973.post-1143990560286655332006-04-02T22:07:00.000+07:002006-04-02T22:34:13.130+07:00คุณยายผู้น่ารัก กับ ๒ เมษา กาทั่วไทย<br /><br /> เนื่องจากวันนี้ (วันที่ ๒ เมษายน พ.ศ.๒๕๔๙) ผมติดภารกิจไม่สามารถกลับบ้านไปเลือกตั้งได้<br /><br />อย่างไรก็ตามก็ได้โทรไปถามภรรยา (ซึ่งตอนนี้กลับไปดูแลร้านที่ต่างจังหวัดแล้ว) เกี่ยวกับการเลือกตั้งที่บ้านภรรยา<br /><br /><br /><br /> ภรรยาเล่าให้ฟังว่า<b>คูหาเลือกตั้งภายในหน่วยเลือกตั้งที่บ้าน (อยู่ตรงข้ามร้านภรรยาเลย) มันตั้งได้ห่วยมาก</b><br /><b>ขนาดดูไกล ๆ ที่เคาน์เตอร์ในร้านยังพอมองออกเลยว่าใครกาช่องไหน</b><br /><br /><br /><br /><br /> กลับมาเรื่องลงคะแนน ก็แน่นอน ภรรยาบอกด้วยความภูมิใจ <b>"ไม่ต้องมาถาม เค้าก็กาช่องไม่ลงคะแนนน่ะสิ เอาปากกาไปเองด้วย"</b><br />แล้วภรรยาก็บอกอีกว่า ส่วนใหญ่คนที่บ้านที่เคยดูเรื่องอาร์เจนตินา ส่วนใหญ่จะกาช่องไม่ลงคะแนนกัน (บ้านภรรยาผมเนี่ย บ้านนอกนะครับ รากหญ้าตัวจริง)<br />อ้อ ส่วนใหญ่ก็จะเป็นตำรวจแล้วก็ครูซะด้วย แล้วก็พ่อค้าแม่ค้าบางส่วน ... <br /><br /><br /><br /> <b>นี่ไง ใครว่ารากหญ้าอีสานโง่ เค้าไม่ได้รับข้อมูลตะหาก ;-)</b><br /><br /><br /><br /> ส่วนที่จั่วหัวเรื่องไว้ก็ไม่ใช่ใครที่ไหนครับ คุณยายของแฟนผมเอง แกอายุกว่า ๗๐ ปีแล้ว แต่ใจยังรักการเลือกตั้ง<br /><br />ที่เขตเลือกตั้งที่บ้านแฟนผมมีผู้สมัครเขตคนเดียว ไม่บอกก็รู้ ..ทรท.. เบอร์ ๒ ..<br /><br />พอคุณยายไปเลือกตั้งกลับมาแล้ว แฟนผมก็ถามแกเลย (ตรงนี้กรุณาอ่านเป็นภาษาอีสาน เพื่ออรรถรสในการจินตนาการถึงคนแก่บ้านนอก)<br /><br /> ...<br /><br /> แฟนผม <b>"ยาย เจ้าไปเลือกตั้งน่ะ กาช่องได๋"</b><br /><br /> คุณยาย <b>"ฮ่วย มึงสิถามเฮ็ดหยัง กูก่ะกาช่องเบอร์ ๑ น่ะตั๊ว จั๊กสิเลือกไผ"</b><br /><br /> แฟนผม (หัวเราะขำใหญ่) <b>"เอ๊าา ยายย เค้ามีแต่เบอร์ ๒ กับบ่ลงคะแนนได๋ เจ้าไปกาเบอร์ ๑ มันก่ะเป็นบัตรเสียฮั่นตั๊ว"</b><br /><br /> คุณยาย <b>"เอ๊า เบ่าะ บ่ฮู้แหล่ว กูมักเบอร์ ๑ ก่ะกาเบอร์ ๑ โลดแหล่ว เหอ ๆ"</b><br /><br /> ...<br /><br /><b>รายงานข่าวจากแฟนยังแจ้งอีกด้วยว่า ผู้เฒ่าผู้แก่ในหมู่บ้านอีกหลายคนก็เป็นคล้าย ๆ กัน บางคนกาเบอร์ ๑๕ ยังมีเลยเอ้า</b> (มีป่ะ แฟนบอกว่าเบอร์ ๑๕ เบอร์สุดท้ายน่ะ)<br /><br />...<br /><br />ฮ่าๆ ๆ ๆ ผมฟังจากแฟนแล้วหัวเราะก๊ากก <b>แหม คุณยาย .. ทำไปได้</b> ฮ่า ๆ ๆ<br /><br />dongahttp://www.blogger.com/profile/14061304702900018286noreply@blogger.com5tag:blogger.com,1999:blog-10359973.post-1143263356541767002006-03-25T12:07:00.000+07:002006-03-25T12:13:30.403+07:00เมืองกังวล<br><br /><center><br /><b><font size=+1>เมืองกังวล</font></b><br><br /><br><br />เมืองใดไร้สิ่งอันพึงมี ย่อมเสื่อมศักดิ์ศรีไร้คุณค่า<br><br />พระมหาธีระราชเจ้าจอมปรัชญา ทรงพระนิพนธ์ไว้ว่า...น่ากังวล<br><br /><br><br /><b><font size=+1><br />(หมู่) เมืองใดไม่มีทหาร เมืองนั้นไม่นาน...เป็นข้า<br><br />เมืองใดไร้จอมพารา เมืองนั้น ไม่ช้า...นับจน<br><br />เมืองใดไม่มีพานิชเลิศ เมืองนั้น ย่อมเกิดสับสน<br><br />เมืองใดไร้ศิลปะโสภณ เมืองนั้น ไม่พ้นเสื่อมทราม<br><br />เมืองใดไม่มีกวีแก้ว เมืองนั้นไม่แคล้วคนหยาม<br><br />เมืองใดไร้นารีงาม เมืองนั้นสิ้นความภูมิใจ<br><br />เมืองใดไม่มีดนตรีเลิศ เมืองนั้นไม่เพริศพิสมัย<br><br />เมืองใดไร้ธรรมอำไพ เมืองนั้นบรรลัยแน่นอน<br><br /></font></b><br /></center>dongahttp://www.blogger.com/profile/14061304702900018286noreply@blogger.com3tag:blogger.com,1999:blog-10359973.post-1143257348982088662006-03-25T10:24:00.000+07:002006-03-25T10:33:20.813+07:00.... หนักแผ่นดิน ....<br><br /><center><b>หนักแผ่นดิน</b><br><br /><br> <br /> คนใดใช้ชื่อไทยอยู่ กายก็ดูเหมือนไทยด้วยกัน<br><br />ได้อาศัยโพธิทองแผ่นดินของราชันย์ แต่ใจมันยังเฝ้าคิดทำลาย<br><br /><br><br /> คนใดเห็นไทยเป็นทาส ดูถูกชาติเชื้อชนถิ่นไทย<br><br />แต่ยังฝังทำกินกอบโกยสินไทยไป เหยียดคนไทยเช่นทาสของมัน<br><br /><br><br /><b>(สร้อย) หนักแผ่นดิน หนักแผ่นดิน คนเช่นนี้เป็นคนหนักแผ่นดิน</b><br><br /><br><br /> คนใดยุยงปลุกปั่น ไทยด้วยกันหวังให้แตกกระจาย<br><br />ปลุกระดมมวลชนให้สับสนวุ่นวาย เพื่อคนไทยแบ่งฝ่ายรบกันเอง<br><br /><br><br /> คนใดหลงชนชาติอื่น ชาติเดียวกันเขายืนข่มเหง<br><br />ได้สินทรัพย์เจือจานก็ประหารไทยกันเอง ทีชาติอื่นเกรงดังญาติของมัน<br><br /><br><br /><b>(สร้อย) หนักแผ่นดิน หนักแผ่นดิน คนเช่นนี้เป็นคนหนักแผ่นดิน</b><br><br /><br><br /> คนใดขายตนขายชาติ ได้โอกาสชี้ทางให้ศัตรู<br><br />เข้าทลายพลังไทยให้สลายมางสู้ เมื่อศัตรูโจมจู่เสียทีมัน<br><br /><br><br /> คนใดคิดร้ายราวี ประเพณีของไทยไม่ต้องการ<br><br />เกื้อหนุนอคติเชื่อลัทธิอันธพาล แพร่นำมันมาบ้านเมืองเรา<br><br /><br><br /><b>(สร้อย) หนักแผ่นดิน หนักแผ่นดิน คนเช่นนี้เป็นคนหนักแผ่นดิน</b><br><br /><br><br /><br />.......................</center><br><br>dongahttp://www.blogger.com/profile/14061304702900018286noreply@blogger.com8tag:blogger.com,1999:blog-10359973.post-1130385549226072942005-10-27T10:40:00.000+07:002005-10-27T11:04:36.013+07:00คราวเคราะห์ <br />สุดสัปดาห์ที่ผ่านมา ผมกลับไปเยี่ยมบ้านภรรยาเช่นเคย ครั้งนี้ร้านมินิมาร์ทที่ลงทุนทำร่วมกับทางน้องของภรรยาก็ดูเป็นรูปเป็นร่างที่ชัดเจน ข้าวของก็ค่อนข้างครบถ้วน ลูกค้าก็เข้าร้านไม่ขาด (ดีจัง ;-)<br /><br /> <br />วันอาทิตย์ภรรยาให้ทำการห้อยลูกโป่งแบบพลาสติกใส ข้างในบรรจุโฟมและลูกกระดิ่งกลม ๆ ดูน่ารักเพื่อตกแต่งร้าน ผมจัดแจงยกเก้าอี้ไม้ยางพาราแบบพับได้มากางเพื่อปีนขึ้นไปห้อยลูกโป่ง จัดการห้อยไปเรียบร้อย เสียงภรรยาท้วงมาจากด้านหลังว่า <b>"มันสูงไป ไม่สวยอ่ะ"</b> ว่างั้น<br /><br /><b>"โอเค เดี๋ยวจัดให้"</b> ผมบอกภรรยายิ้ม ๆ แล้วก็เขย่งเก็งกอยบนเก้าอี้ต่อ ขณะกำลังจะทำการมัดริบบิ้นให้สวยงาม ก็รู้สึกว่าตัวเองวูบหล่นลงมาที่พื้นพร้อม ๆ กับได้ยินเสียง <b>'แคร๊กกก'</b> ดังพอควรตามด้วยเสียง <b>'พลั่กกกก'</b> มารู้สึกตัวอีกทีผมก็ร่วงมาอยู่ที่พื้นเรียบร้อยแล้ว<br /><br />พอตั้งสติได้ก็ทำการสำรวจร่างกายตัวเอง พบว่าเอวขยับไม่ได้เพราะปวดจี๊ด ๆ เหลียวไปมองดูซากเก้าอี้ก็หน้าเสีย เพราะตัวขาเก้าอี้ถึงกับฉีกออกมาเป็นไม้แหลม ๆ ดีที่มันไม่เสียบหลังเอา -_-! ภรรยาวิ่งเข้ามาคลำ ๆ หลังแล้วก็เลิกเสื้อด้านหลังขึ้นแล้วก็บอกว่า <b>"โหยย เหมือนแตกเลย"</b> สงสัยจะเพราะตัวพนักพิงของเก้าอี้ฟาดตอนตกลงมา<br />ผมค่อย ๆ พยุงตัวเองขึ้นมาแล้วก็เดินมาค่อย ๆ ทิ้งตัวลงบนเสื่อ พยายามข่มความเจ็บปวดด้วยการระลึกรู้ลมหายใจ ซักพักก็หลับไป ตื่นมาอีกทีรู้สึกหลังคลายความปวดไปเยอะพอควร รอบนี้ภรรยาเอายาหม่องมานวดให้ด้วย<br /><br /><hr><br /> <br />ขากลับมากรุงเทพฯ ดันจองรถวีไอพี ๒๔ ที่นั่งไม่ได้ ได้รถ ป.๑ ธรรมดา แล้วที่นั่งก็อยู่เหนือล้อหลังซะด้วย -_-' กว่าจะถึงกรุงเทพฯ ก็เล่นเอาปวดหลังไปพอดู แล้วยังไม่ค่อยจะหลับด้วย<br /><br /><hr><br /> <br />เมื่อวานไปตรวจกระดูกที่วิทยาลัยแพทย์ศาสตร์กรุงเทพมหานครและวชิระพยาบาลมา ไปถึงตั้งแต่ ๙ โมงครึ่ง กว่าจะได้ตรวจปาเข้าไป ๑๑ โมงครึ่ง หมอให้ไปเอ็กซเรย์ตอนใกล้ ๆ เที่ยง เจ้าหน้าที่ห้องเอ็กซเรย์บอกว่า <b>"คุณต้องมายื่นตอนบ่ายโมงนะคะ ตอนนี้พักเที่ยง"</b> นั่น ขนาดหมอเค้ายังไม่พักเที่ยงเลย บรรดาคุณ ๆ เจ้าหน้าที่กลับพากันพัก (ทำไมไม่แบ่งเวรกันไปกินข้าวฟะ) ได้ผลเอ็กซเรย์ตอนบ่ายโมงครึ่ง กลับไปหาคุณหมอ ๆ ก็ดู แล้วก็บอกว่าไม่เป็นอะไรมาก คงแค่ช้ำและกล้ามเนื้อฉีกเท่านั้น เฮ้อ โล่งอกไปที ถือเป็นคราวเคราะห์ละกัน ไม่ก็ผลกรรมอย่างใดอย่างหนึ่งมันคงมาเฉ่งเอาแหละ :-/<br /><br /><br /><br />ป.ล. ช่วงนี้อารมณ์แปรปรวนมาก ไม่อยากใช้สมอง ขอพักอู้อีกหลายวันครับ :-Pdongahttp://www.blogger.com/profile/14061304702900018286noreply@blogger.com10tag:blogger.com,1999:blog-10359973.post-1129811361953575992005-10-20T19:27:00.000+07:002005-10-20T19:29:21.960+07:00โหยยยย blogger ทำฉันได้ T_Tเมื่อกี๊พิมพ์มาซะเยอะ กด preview หน่อยเดียว ข้อความที่พิมพ์ <b>หายเกลี้ยงงงงง</b> โห่ยยยยยยยยยยยยยย วัยรุ่นเซ็งครับ วัยรุ่นเซ็ง..... เอาเป็นว่า ผมขอลาพักสุดสัปดาห์นี้ละกัน อาทิตย์หน้าค่อยมาว่ากันใหม่ :-pdongahttp://www.blogger.com/profile/14061304702900018286noreply@blogger.com9tag:blogger.com,1999:blog-10359973.post-1129567355262293122005-10-17T23:39:00.000+07:002005-10-17T23:44:27.920+07:00POSIX EAs & ACLs ตอนที่ 2<h4>แนะนำ Access Control Lists บนระบบลินุกซ์</h4><br /> <b>Access Control Lists คืออะไร ทำไมต้องใช้ ?</b><br><br /><br><br /> Access Control Lists ที่กล่าวถึงนี้<br />เป็นการกำหนดสิทธิ์แบบใหม่ ซึ่งระบุไว้ในร่างมาตรฐาน <a href="http://wt.xpilot.org/publications/posix.1e/"><b>POSIX 1003.1e</b></a><br />และ <a href="http://www.suse.de/%7Eagruen/acl/posix/posix_1003.2c-990310.pdf"><b>POSIX<br />1003.2c</b></a> (<b>POSIX ย่อมาจาก Portable Operating System Interface<br />ส่วนตัว X หมายถึงเกี่ยวพันกับ api ของระบบ Unix </b> - อ่านเพิ่มเติมได้ที่ <a href="http://en.wikipedia.org/wiki/POSIX">http://en.wikipedia.org/wiki/POSIX</a>)<br />โดยเป็นการขยายความสามารถในการกำหนดสิทธิ์การใช้งานแฟ้มเพิ่มขึ้นจากรูปแบบสิทธิ์ที่ใช้อยู่เดิม<br />ซึ่งสามารถกำหนดสิทธิ์ได้ถึงระดับผู้ใช้หลายคน<br />หรือระดับกลุ่มผู้ใช้หลายกลุ่มก็ได้ จึงช่วยให้การใช้งาน ALCs<br />แบบนี้มีความปลอดภัย แม่นยำ และยืดหยุ่นสูง ส่วนคำว่า EA ก็คือ Extended<br />Attributes นั่นเอง<br><br /><br /> แต่เดิมในยุคที่ลินุกซ์ยังใช้เคอร์เนล 2.4 อยู่นั้น<br />ACL ยังเป็นเพียง patch เพิ่มเติมสำหรับเคอร์เนลเท่านั้นเอง<br />นั่นคือ หากใครต้องการใช้งาน ACL<br />ก็จำเป็นจะต้องทำการแพตช์เคอร์เนลให้รองรับการใช้งาน ACL เสียก่อน<br />ทำให้ในตอนนั้นยังไม่มีการใช้งาน ACL กันแพร่หลายนัก<br />จนมาถึงยุคเคอร์เนลรุ่น 2.6 ACL<br />ก็ถูกรวมเข้าไว้เป็นส่วนหนึ่งของเคอร์เนลเรียบร้อยแล้ว ส่งผลให้ปัจจุบัน<br />ลินุกซ์ดิสโทรชันแทบทุกค่ายที่มีในปัจจุบันนั้น<br />มีความสามารถพื้นฐานในการรองรับความสามารถในการกำหนดสิทธิ์ให้กับแฟ้มตามมาตรฐาน<br />ACL นี้ได้<br /><br><br /> สำหรับกลุ่มระบบปฏิบัติการที่รองรับ POSIX ACL ในปัจจุบันก็เช่น<br><br /><ul><br /> <li>IBM AIX</li><br /> <li>FreeBSD</li><br /> <li>SGI Irix</li><br /> <li>Sun Solaris</li><br /> <li>HP Tru64</li><br /> <li>SCO UnixWare</li><br /> <li>Linux รุ่นใหม่ ๆ</li><br /></ul><br /><br /> ส่วนระบบแฟ้มที่รองรับการทำงานกับ ACL ได้แก่<br><br /><ul><br /> <li>ReiserFS</li><br /> <li>Ext2</li><br /> <li>Ext3</li><br /> <li>JFS</li><br /> <li>XFS</li><br /></ul><br /><br /> <b>ทดลองใช้งาน ACL</b><br><br /><br><br /><div style="border: 1px dotted ; background-color: rgb(123, 255, 224);"><br /> การใช้งาน ACL บนระบบแฟ้มต่าง ๆ นั้น<br />เราจะต้องทำการเพิ่มตัวเลือก <b><i>acl</i></b> <br />ในการเมาทน์ระบบแฟ้มก่อนด้วย เช่น<br><br /> <b># mount -o remount,acl /dev/sda1 /</b><br><br /> หรืออาจจะเพิ่มไว้ในแฟ้ม /etc/fstab<br />ในส่วนตัวเลือกของแต่ละพาร์ติชันเลยก็ได้ เช่น<br><br /> <b>/dev/hda7 <br />/ <br />reiserfs <i>acl</i>,user_xattr <br />1 1</b><br><br /></div><br /><br><br /><br /> สำหรับบนระบบลินุกซ์ที่ผมทดลองใช้ ACL อันได้แก่ <a href="http://www.opensuse.org/">SUSE<br />Linux OSS 10.0</a> และ <a href="http://fedora.redhat.com/">Fedora</a><br />Core 3 และ 4 นั้น ทั้ง SUSE และ Fedora ได้เตรียม<span style="font-weight: bold;">แพ็กเกจพื้นฐาน acl</span><br />ไว้ให้ใช้ในการจัดการกับ ACL เรียบร้อยแล้ว<br />ซึ่งแพ็กเกจ acl นี้จะให้คำสั่งในการใช้งานกับ acl มา 3 คำสั่ง ได้แก่<br><br /><ul><br /> <li><b>getfacl</b> - เป็นคำสั่งในการขอดูสิทธิ์ที่อนุญาตในการใช้งานแฟ้มหรือไดเรกทอรี</li><br /> <li><b>setfacl</b> - เป็นคำสั่งในการตั้งค่าสิทธิ์ที่จะอนุญาตในการใช้งานแฟ้มหรือไดเรกทอรี</li><br /> <li><b>chacl</b> - เป็นคำสั่งในการเปลี่ยนสิทธิ์ต่าง ๆ ในการใช้งานแฟ้มหรือไดเรกทอรี</li><br /></ul><br /><br /> ลองมาเรียกดู acl<br />ของแฟ้มจากพาร์ติชันที่ไม่ได้เมาทน์ด้วยตัวเลือก acl กันดูสักหน่อยครับ<br><br /><pre>donga@linux:/media/SHARES> getfacl Logo.svg<br># file: Logo.svg<br># owner: root<br># group: root<br>user::rw-<br>group::r--<br>other::r--<br></pre><br /><br /> ส่วนผลลัพธ์การเรียกคำสั่ง ls ได้ผลดังนี้ครับ<br><br /><pre>donga@linux:/media/SHARES> ls -l Logo.svg<br>-rw-r--r-- 1 root root 2225 2005-06-21 22:40 Logo.svg<br></pre><br /><br /> ในส่วน user::rw- group::r-- และก็ other::r--<br />ที่ได้จากคำสั่ง getfacl นั้น เรียกว่า ACL Entry ครับ<br />ซึ่งจากตัวอย่างจะมีเพียง 3 ตัว ตามสิทธิ์ที่อนุญาตแบบเดิม ๆ<br />ที่เรากำหนดให้กับ user, group และ other นั่นเอง แต่จริง ๆ แล้ว ACL<br />Entry นั้นมีหลายประเภทนะ ซึ่งพอจะสรุปประเภทและรูปแบบของ ACL Entry<br />ประเภทต่าง ๆ ได้ตามตารางด้านล่างนี้<br><br /><br><br /><div style="margin-left: 40px; margin-right: 40px; border-top: 2px solid; border-bottom: 1px solid;"><br /><table width="100%"><br /> <tbody><br /> <tr bgcolor="#949494"><br /> <td style="vertical-align: top;"><b>ประเภท</b></td><br /> <td style="vertical-align: top;"><b>ใช้สำหรับ</b></td><br /> <td style="vertical-align: top;"><b>รูปแบบ</b></td><br /> </tr><br /> <tr><br /> <td style="vertical-align: top;">owner</td><br /> <td style="vertical-align: top;">สิทธิ์ของเจ้าของแฟ้ม/ไดเรกทอรี</td><br /> <td style="vertical-align: top;">user::rwx</td><br /> </tr><br /> <tr><br /> <td style="vertical-align: top;">named user</td><br /> <td style="vertical-align: top;">สิทธิ์สำหรับผู้ใช้โดยระบุชื่อผู้ใช้</td><br /> <td style="vertical-align: top;">user:name:rwx</td><br /> </tr><br /> <tr><br /> <td style="vertical-align: top;">owning group</td><br /> <td style="vertical-align: top;">สิทธิ์สำหรับกลุ่มเดียวกันกับเจ้าของแฟ้ม/ไดเรกทอรี</td><br /> <td style="vertical-align: top;">group::rwx</td><br /> </tr><br /> <tr><br /> <td style="vertical-align: top;">named group</td><br /> <td style="vertical-align: top;">สิทธิ์สำหรับกลุ่มตามชื่อกลุ่มที่ระบุ</td><br /> <td style="vertical-align: top;">group:name:rwx</td><br /> </tr><br /> <tr><br /> <td style="vertical-align: top;">mask<br><br /> </td><br /> <td style="vertical-align: top;">มาสก์ของสิทธิ์ที่อนุญาต (ขอยกไปอธิบายภายหลัง)</td><br /> <td style="vertical-align: top;">mask::rwx</td><br /> </tr><br /> <tr><br /> <td style="vertical-align: top;">other</td><br /> <td style="vertical-align: top;">สิทธิ์สำหรับผู้ใช้อื่น ๆ</td><br /> <td style="vertical-align: top;">other::rwx</td><br /> </tr><br /> </tbody><br /></table><br /></div><br /><br><br /> ทีนี้ลองมาดูเปรียบเทียบส่วน ACL Entry<br />ระหว่างแฟ้มที่ใช้ ACL กับไม่ได้ใช้ ACL กันอีกสักตัวอย่าง<br><br /><br><br /><div style="margin-left: 40px; margin-right: 40px; border-top: 2px solid; border-bottom: 1px solid;"><br /><table width="100%"><br /> <tbody><br /> <tr bgcolor="#949494"><br /> <td><b>พาร์ติชันที่ไม่ได้เมาทน์ด้วยตัวเลือก acl</b></td><br /> <td><b>พาร์ติชันที่เมาทน์ด้วยตัวเลือก acl</b></td><br /> </tr><br /> <tr><br /> <td style="vertical-align: top;"><br /> <pre>donga@linux:/media/SHARES> getfacl Logo.svg<br># file: Logo.svg<br># owner: root<br># group: root<br>user::rw-<br>group::r--<br>other::r--<br></pre><br /> </td><br /> <td style="vertical-align: top;"><br /> <pre>donga@linux:~> getfacl wireless.log<br># file: wireless.log<br># owner: donga<br># group: users<br>user::rw-<br>user:nipat:rw-<br>group::r--<br>mask::rw-<br>other::r--<br></pre><br /> </td><br /> </tr><br /> </tbody><br /></table><br /></div><br /><br><br /> จะเห็นว่า ในฝั่งขวามือซึ่งเป็นส่วนที่มีการใช้ acl<br />นั้นจะมีรายละเอียดของ ACL Entry เพิ่มขึ้นมาหลายส่วน<br />เราลองมาเทียบผลลัพธ์ของ acl ที่เป็น ACL Entry<br />กับการกำหนดสิทธิ์ที่อนุญาตในรูปแบบเดิมกันดูมั่ง<br><br /><br><br /><div style="margin-left: 40px;"><br /><table style="border: 0px none ; width: 120px;" cellpadding="2" cellspacing="2"><br /> <tbody><br /> <tr><br /> <td style="vertical-align: top; halign:right;"><br /> <pre>owner<br>named user<br>owning group<br>mask<br>other</pre><br /> </td><br /> <td style="border: 1px solid ; vertical-align: top;"><br /> <pre><b>user::rw-<br>user:nipat:rw-<br>group::r--<br>mask::rw-<br>other::r--</b></pre><br /> </td><br /> <td style="vertical-align: top;"><br /> <pre><--><br> <br> <br><--><br><--></pre><br /> </td><br /> <td style="vertical-align: top;"><br /> <pre> <b>rw-</b> == สิทธิ์ของเจ้าของแฟ้ม<br> <br> <br> <b>rw-</b> == สิทธิ์ของกลุ่มเดียวกันกับเจ้าของแฟ้ม<br> <b>---</b> == สิทธิ์ของผู้ใช้อื่น ๆ</pre><br /> </td><br /> </tr><br /> </tbody><br /></table><br /></div><br /><br><br /> ลอง ls แฟ้ม wireless.log ดู<br><br /><pre>donga@linux:~> ls -l wireless.log<br>-rw-rw-r--+ 1 donga users 598 2005-10-16 22:22 wireless.log<br></pre><br /><br /> จะเห็นว่า หลังกลุ่มแอตทริบิวต์ระบุสิทธิ์ มีเครื่องหมาย "<b>+</b>"<br />ต่อท้ายเข้ามา นั่นหมายถึงแฟ้มนี้มีส่วนสิทธิ์ที่อนุญาตในแบบ ACL<br />เพิ่มเติมเข้ามานั่นเอง<br /><br><br /><br><br /> เอาละครับ ก่อนจบตอนที่ 2 นี้ เดี๋ยวเรามาทำความรู้จักกับคำสั่ง setfacl ซึ่งเป็นคำสั่งที่ย่อมาจาก set file access control lists <br />ใช้สำหรับการตั้งค่า ACL ให้กับแฟ้มหรือไดเรกทอรี ว่ามีพารามิเตอร์อะไรกันบ้าง และมีวิธีการใช้งานขั้นต้นอย่างไรบ้าง โดยขออ้างอิงจากพารามิเตอร์ --help ของคำสั่งครับ<br /><br><br /><br><br /><h4> คำสั่ง setfacl</h4><br /><br><br /><pre><br /><b>setfacl -- set file access control lists</b><br /><font style="background:#a8afc9;" size=+1><b>รูปแบบคำสั่ง:</b> setfacl [-bkndRLP] { -m|-M|-x|-X ... } แฟ้ม/ไดเรกทอรี ...</font><br /><b>พารามิเตอร์ต่าง ๆ ได้แก่</b><br /> -m, --modify=acl แก้ไขค่า acl ปัจจุบันของแฟ้ม/ไดเรกทอรี<br /> -M, --modify-file=file แก้ไขค่า acl ปัจจุบันของแฟ้ม/ไดเรกทอรี โดยใช้ค่าจากรายการ ACL ที่อยู่ในแฟ้มที่ระบุ (=file)<br /> -x, --remove=acl ลบ acl รายการที่กำหนด (=acl) ออกจาก ACL ของแฟ้ม/ไดเรกทอรี<br /> -X, --remove-file=file ลบ acl ออกจากแฟ้ม/ไดเรกทอรี โดยใช้ค่าจากรายการ ACL ที่อยู่ในแฟ้มที่ระบุ (=file)<br /> -b, --remove-all ลบรายการ ACL <b>ทุกรายการ</b>ออกจากแฟ้ม<br /> -k, --remove-default ลบส่วนรายการปริยายของ ACL (default ACL)<br /> --set=acl ตั้งค่า acl ของแฟ้ม/ไดเรกทอรี โดยทำการแทนที่ค่า acl เดิมที่มีอยู่<br /> --set-file=file ตั้งค่า acl ของแฟ้ม/ไดเรกทอรี โดยใช้ค่าจากรายการ ACL ที่อยู่ในแฟ้มที่ระบุ (=file)<br /> --mask ทำการประมวลผลสิทธิ์ที่ควรได้รับผลกระทบจากค่ามาสก์<br /> -n, --no-mask ไม่ต้องทำการประมวลผลสิทธิ์ที่ควรได้รับผลกระทบจากค่ามาสก์<br /> -d, --default ดำเนินการกับค่ารายการปริยายของ ACL (default ACL)<br /> -R, --recursive กระทำกับแฟ้ม/ไดเรกทอรีย่อยภายในด้วย<br /> -L, --logical ดำเนินการกับแฟ้มในแบบลอจิคอล ซึ่งจะมีการกระทำกับแฟ้มแบบ symbolic link ด้วย<br /> -P, --physical ดำเนินการกับแฟ้มในแบบกายภาพ โดยไม่มีการกระทำกับแฟ้มแบบ symbolic link<br /> --restore=file เรียกคืนค่ารายการ acl ของแฟ้ม/ไดเรกทอรี โดยใช้ค่าจากรายการ ACL ที่อยู่ในแฟ้มที่ระบุ (=file)<br /> (ให้ผลตรงข้ามกับคำสั่ง `getfacl -R')<br /> --test โหมดทดสอบ (ไม่มีการแก้ไขรายการ ACL ใด ๆ)<br /> --version พิมพ์หมายเลขรุ่นและจบการทำงาน<br /> --help แสดงข้อความช่วยเหลือ<br /></pre><br /><br /> สำหรับ<b>การใช้งานคำสั่ง setfacl อย่างง่าย</b> ก็เช่น<br><br /> - ต้องการกำหนดให้ผู้ใช้ชื่อ nipat ซึ่งไม่ได้เป็นกลุ่มผู้ใช้เดียวกันกับเรา ให้สามารถทำการอ่านและเขียนแฟ้ม wireless.log ซึ่งเราเป็นเจ้าของได้<br />และไม่ให้ผู้ใช้อื่นมีสิทธิ์ใด ๆ ในแฟ้มนี้ เราสามารถใช้คำสั่ง setfacl ได้ดังนี้<br /><pre><br />> <b>setfacl -m user:nipat:rw wireless.log</b><br /></pre><br /> - ในกรณีที่รายการ acl user:nipat ของแฟ้ม wireless.log ยังไม่มีอยู่ คำสั่งนี้จะทำการเพิ่มรายการ acl user:nipat เข้าไป<br><br /> - แต่ถ้าแฟ้ม wireless.log มีรายการ acl user:nipat อยู่แล้ว คำสั่งนี้จะเป็นการแก้ไขสิทธิ์ของ acl user:nipat<br /><br><br /><br><br /> และสุดท้ายของตอนนี้ ก็มาดูคำสั่ง getfacl กันครับ<br /><br><br /><h4> คำสั่ง getfacl</h4><br /><pre><br /><b>getfacl -- get file access control lists</b><br /><font style="background:#a8afc9;" size=+1><b>รูปแบบคำสั่ง:</b> getfacl [-dRLP] file ...</font><br /><b>พารามิเตอร์ต่าง ๆ ได้แก่</b><br /> --access ให้แสดงเฉพาะรายการ acl ของแฟ้ม/ไดเรกทอรีเท่านั้น<br /> -d, --default ให้แสดงเฉพาะรายการ acl ที่เป็นปริยายของแฟ้ม/ไดเรกทอรีเท่านั้น (default ACL)<br /> --omit-header ไม่ต้องแสดงหมายเหตุส่วนหัว<br /> --all-effective แสดงสิทธิ์ที่ได้รับทั้งหมด<br /> --no-effective แสดงสิทธิ์ที่ไม่ได้รับทั้งหมด<br /> --skip-base ข้ามแฟ้มที่มีเฉพาะรายการ acl พื้นฐาน (สิทธิ์แบบเดิม ๆ ที่ใช้กับคำสั่ง chmod)<br /> -R, --recursive เรียกดูกับแฟ้ม/ไดเรกทอรีย่อยภายในด้วย<br /> -L, --logical ดำเนินการกับแฟ้มในแบบลอจิคอล ซึ่งจะมีการกระทำกับแฟ้มแบบ symbolic link ด้วย<br /> -P --physical ดำเนินการกับแฟ้มในแบบกายภาพ โดยไม่มีการกระทำกับแฟ้มแบบ symbolic link<br /> --tabular ใช้รูปแบบการแสดงผลโดยการแบ่งช่องด้วยแท็บ<br /> --numeric แสดงค่าหมายเลขของผู้ใช้/หมายเลขกลุ่มผู้ใช้<br /> --absolute-names ไม่ต้องเครื่องหมาย '/' ที่นำหน้าพาธออก<br /> --version พิมพ์หมายเลขรุ่นและจบการทำงาน<br /> --help แสดงข้อความช่วยเหลือ<br /></pre><br /><br /> สำหรับ<b>การใช้งานคำสั่ง getfacl อย่างง่าย</b> ก็เช่น<br><br /><pre><br />> <b>getfacl wireless.log</b><br /># file: wireless.log<br /># owner: donga<br /># group: users<br />user::rw-<br />user:nipat:rw-<br />group::r--<br />mask::rw-<br />other::r--<br /></pre><br /> ซึ่งก็เป็นสั่งให้แสดงค่าของรายการ acl ที่กำหนดให้กับแฟ้ม wireess.log นั่นเอง<br /><br><br /><br><br /><br /> <br />เอาละครับ สำหรับตอนนี้ผมขอพักแค่นี้ก่อนละกัน<br />เดี๋ยวตอนหน้าเราค่อยมาต่อกันในเรื่อง mask ว่าเกี่ยวข้องกับ acl อย่างไร <br />การใช้ acl กับแฟ้มและไดเรกทอรีมีผลเหมือนหรือแตกต่างกันอย่างไร เดี๋ยวมาว่ากันตอนหน้าครับ <br />ตอนนี้เบลอแล้ว (html จัดหน้ายากชะมัด :P :lol:)<br /><br /><br><br /><br><br /><br /><div style="border: 1px dotted ; background-color: rgb(123, 255, 224);"><br /><b>ข้อมูลอ้างอิง:</b> <a href="http://acl.bestbits.at/about.html">http://acl.bestbits.at/about.html</a><br /></div>dongahttp://www.blogger.com/profile/14061304702900018286noreply@blogger.com1tag:blogger.com,1999:blog-10359973.post-1129532808082257582005-10-17T14:01:00.000+07:002005-10-17T20:25:08.690+07:00POSIX EAs & ACLs ตอนที่ 1 เมื่ออาทิตย์ก่อน ท่าน ผจก.ฝ่าย อยากจะกำหนดสิทธิ์ในการใช้งานแฟ้มบนเซิร์ฟเวอร์ให้รัดกุม โดยต้องการจะแยกแยะสิทธิ์ในการอ่าน, การเขียน และการประมวลผลแฟ้มและไดเรกทอรีอย่างชัดเจน โดยจะทำให้กำหนดสิทธิ์ให้กับผู้ใช้หรือกลุ่มแยกรายตัวหรือรายกลุ่มกันเลยทีเดียว จึงได้มอบหมายให้ผมทำการปรับแต่งสิทธิ์ในการใช้งานแฟ้มบนเซิร์ฟเวอร์ให้เป็นไปตามข้อกำหนด เอาล่ะสิครับ เคยรู้จักแต่การกำหนดสิทธิ์แบบเดิม ๆ ที่เรารู้จักกันในเรื่องการตั้งค่าสิทธิ์ที่อนุญาตหรือ Permissions โดยใช้คำสั่ง chmod ยอดนิยม :p<br><br /> แล้วจะทำไงดีหว่า ?<br><br /> ว่าแล้วก็ต้องอ่านคู่มือ Admin ที่ติดมากับ SUSE Linux OSS ก่อนละ แล้วก็มาสะดุดกับหัวข้อ POSIX ACLs ซึ่งเป็นเรื่องของการกำหนดสิทธิ์อนุญาตที่พิเศษและเหนือกว่าคำสั่ง chmod อ่าน ๆ ไป แล้วก็ค้น<a href="http://www.google.com/">กูเกิ้ล</a>ต่อ ก็เลยเอามาสรุปไว้ที่นี่แหละ ;-)<br><br /><h4>ทบทวนเรื่องสิทธิ์ที่อนุญาตหรือ Permission</h4><br /> หลาย ๆ ท่านคงคุ้นเคยกับการตั้งค่าสิทธิ์ที่อนุญาตหรือ Permission ที่ใช้กำหนดการเข้าใช้งานไดเรกทอรีและแฟ้มต่าง ๆ บนระบบยูนิกซ์รวมไปถึงระบบคล้ายยูนิกซ์เช่นลินุกซ์กันดีอยู่แล้ว โดยการตั้งค่าสิทธิ์ที่อนุญาตนี้ เราจะกระทำผ่านคำสั่ง chmod (change file access permissions) ซึ่งจะสามารถกำหนดระดับการเข้าถึงได้ 3 ระดับ นั่นคือ<br><br /><ul><br /><li>การอ่าน (read - แฟล็ก r)</li><br /><li>การเขียน (write - แฟล็ก w) และ</li><br /><li>การประมวลผล (execute - แฟล็ก x) หากใช้กับไดเรกทอรีจะเป็นการอนุญาตให้เข้าใช้งานไดเรกทอรีได้<br /></li><br /></ul><br /> จากระดับการเข้าถึงทั้ง 3 นั้น ยังใช้กำหนดแยกให้กับระดับผู้ใช้อีก 3 ระดับ นั่นคือ<br><br /><ul><br /><li>เจ้าของแฟ้ม/ไดเรกทอรี (File Owner)</li><br /><li>กลุ่มผู้ใช้ (Group) และ</li><br /><li>ผู้ใช้อื่น (Other users)</li><br /></ul><br /> ลองดูผลลัพธ์ที่ได้จากคำสั่ง ls<br />เพื่อทบทวนกันสักหน่อยดีกว่า<br><br /><pre>donga@linux:~> ls -l Documents/KDE-SVN/th/messages<br>total 21<br>-rw-r--r-- 1 donga users 104 2005-09-29 21:17 flag.png<br>drwxr-xr-x 3 donga users 208 2005-10-05 21:48 kdeaccessibility<br>...</pre><br /> <br />จากผลลัพธ์เราสามารถแบ่งกลุ่มตัวอักษรที่คอลัมน์แรกออกเป็น 4 กลุ่มด้วยกัน<br />โดยประกอบด้วย<br><br /><br><br /><div style="margin-left: 40px;"><br /><table style="border: 1px solid ; text-align: left; width: 85%;"><br /><tbody><br /><tr><br /><td>-</td><br /><td>rw-</td><br /><td>r--</td><br /><td>r--</td><br /></tr><br /><tr><br /></tr><br /></tbody><br /></table><br /></div><br /><br><br /><div style="margin-left: 40px;"><br /><table style="border: 1px solid ; text-align: left; width: 85%;"><br /><tbody><br /><tr><br /><td style="vertical-align: top;" width="120">อักษรตัวที่ 1</td><br /><td style="vertical-align: top;">ใช้บ่งบอกถึงประเภทของแฟ้ม</td><br /></tr><br /><tr><br /><td style="vertical-align: top;">อักษรตัวที่ 2-4</td><br /><td style="vertical-align: top;">ใช้แสดงสิทธิ์ที่เจ้าของแฟ้ม/ไดเรกทอรีมีต่อแฟ้ม/ไดเรกทอรีนั้น</td><br /></tr><br /><tr><br /><td style="vertical-align: top;">อักษรตัวที่ 5-7</td><br /><td style="vertical-align: top;">ใช้แสดงสิทธิ์ที่กลุ่มที่เป็นกลุ่มเดียวกันกับเจ้าของแฟ้ม/ไดเรกทอรีมีต่อแฟ้ม/ไดเรกทอรีนั้น</td><br /></tr><br /><tr><br /><td style="vertical-align: top;">อักษรตัวที่ 8-10</td><br /><td style="vertical-align: top;">ใช้แสดงสิทธิ์ที่ผู้ใช้อื่น ๆ<br />มีต่อแฟ้ม/ไดเรกทอรีนั้น</td><br /></tr><br /></tbody><br /></table><br /></div><br /><br><br /> สำหรับความหมายของตัวอักษรตัวแรกก็มีความหมายคือ<br><br /><div style="margin-left: 40px;"><br />- หมายถึง เป็นแฟ้มปรกติ<br><br />d หมายถึง เป็นไดเรกทอรี<br><br />c หมายถึง เป็นแฟ้มแบบดีไวซ์ Character I/O<br><br />b หมายถึง เป็นแฟ้มแบบดีไวซ์ Block I/O<br><br />l หมายถึง เป็นแฟ้มแบบเชื่อมโยง (symbolic link)<br><br />s หมายถึง เป็นแฟ้มแบบซ็อกเก็ต (socket file)<br><br />p หมายถึง เป็นแฟ้มแบบ FIFO<br><br /><br><br /></div><br /> สำหรับบิตพิเศษเพิ่มเติม และการใช้งานคำสั่ง chmod ผมไม่ขอกล่าวถึงละกัน ให้ไปทบทวนดูกันเอาเองนะครับ ที่<br><br /> <br /><a href="http://thaicert.nectec.or.th/paper/unix_linux/file_permission.php">http://thaicert.nectec.or.th/paper/unix_linux/file_permission.php</a><br><br /><br><br /> เอาละครับ ถึงตอนนี้จะเห็นว่า<br />เราสามารถที่จะกำหนดสิทธิ์ที่อนุญาตในการใช้งานแฟ้ม/ไดเรกทอรี<br />ให้กับผู้ใช้ในระดับต่าง ๆ ตั้งแต่ กำหนดสิทธิ์ให้กับตัวเจ้าของแฟ้มเอง,<br />กำหนดให้ผู้ใช้ที่อยู่ในกลุ่มเดียวกันกับเจ้าของแฟ้ม<br />และกำหนดให้กับผู้ใช้อื่น ๆ ซึ่งก็น่าจะเพียงพอ<br />และไม่น่าจะเป็นปัญหาแต่อย่างใดหากเป็นการใช้งานแฟ้มและไดเรกทอรีในระดับปรกติธรรมดา<br />แต่ในบางกรณี ถ้าเราต้องการระบุสิทธิ์การอนุญาตที่ซับซ้อนกว่านี้ล่ะ<br />จะทำอย่างไร ยกตัวอย่างกรณีต่าง ๆ เช่น<br><br /><ul><br /><li>ต้องการให้เฉพาะผู้ใช้ชื่อ joe ซึ่งอยู่ในกลุ่มผู้ใช้ชื่อ users<br />สามารถทำการอ่าน, เขียน และประมวลผลแฟ้มของเราได้เพียงคนเดียว<br />แต่ไม่ให้ผู้ใช้อื่น ๆ ในกลุ่ม users มีสิทธิ์อ่าน, เขียน<br />และประมวลผลแฟ้มของเราได้<br><br /></li><br /><li>เจ้าของแฟ้มเป็นผู้ใช้ในกลุ่ม marketing แต่ต้องการให้ผู้ใช้ซึ่งอยู่ในกลุ่มผู้ใช้ที่ชื่อ account สามารถทำการอ่านและเขียนแฟ้มได้เพียงกลุ่มเดียวเท่านั้น</li><br /><li>ต้องการให้สามารถกำหนดสิทธิ์ผ่านระบบวินโดว์ส 2000 , XP หรือ 2003<br />ตามรูปแบบสิทธิ์ที่กำหนดได้บนระบบวินโดว์สดังกล่าว (คือสามารถกำหนดแยกย่อยว่าจะอนุญาตเป็นราย ๆ ทั้งรายผู้ใช้ หรือรายกลุ่มได้)</li><br /><li>ฯลฯ<br><br /></li><br /></ul><br /> ฝากไว้ให้คิดเป็นการบ้านก่อน เดี๋ยวมาต่อตอนหน้าครับ<br />(ที่จริงเมื่อยพิมพ์ กะเมื่อยจัดหน้าอ่ะ :-P )<br><br /> อ้อ ต้องเตรียมลง Win2000 Evaluate บน QEMU<br />เพื่อทดสอบด้วย<br />:-P<br><br /><br><br /><div style="border: 1px dotted ; background-color: rgb(123, 255, 224);"><br /><b>ข้อมูลอ้างอิง:</b> <a href="http://acl.bestbits.at/about.html">http://acl.bestbits.at/about.html</a><br /></div>dongahttp://www.blogger.com/profile/14061304702900018286noreply@blogger.com3tag:blogger.com,1999:blog-10359973.post-1128861663824056182005-10-09T19:21:00.000+07:002005-10-09T19:49:08.053+07:00"กระดิกไทย" ภาคกะโนม.. มาแว้ววว <br />มาแล้วครับ มาแล้ว <b><a href="http://kitty.in.th/index.php?room=blog;date=2005-10-09">"กระดิกไทย" ภาคกะโนม..</a> มาแว้ววว</b> <br /><br /><br /><center><a href="http://kitty.in.th/index.php?room=blog;date=2005-10-09"><img border=0 src="http://kitty.in.th/gallery/screenshots/20051009-01-gdictthai.png" /></a></center><br /><br /> <br />เปล่าหรอกครับไม่ใช่ผลงานของผมแต่ประการใด แต่เป็นผลงานของ<b><a href="http://www.kitty.in.th/">ท่านอาจารย์ Kitty</a></b> แห่ง <a href="http://linux.thai.net/">Thai Linux Working Group</a> นั่นเอง :D<br /><br /> <br />สงสัยคงเนื่องจากแม้ว่าผมจะโดน<i>เสียดสี เยาะเย้ย และถากถาง</i>เอาจากทั้ง<a href="http://www.kitty.in.th/">ท่านอาจารย์ Kitty</a> และ<a href="http://linux.in.th/">ท่านเด่นสิน</a> ใน <a href="http://chat.linux.in.th/">IRC ห้อง #tlwg</a> เพื่อยั่วยุให้ผมเปลี่ยนใจ (ทางโน้นบอกให้กลับตัวกลับใจ) จาก KDE เพื่อมาเขียน <a href="http://kdictthai.sourceforge.net/">กระดิกไทย</a> ที่เป็น GNOME based ให้ได้ แต่ถึงอย่างไร ผมก็ไม่สะทกสะท้านและไม่เขียน (ผมจนปัญญาเขียนตะหาก ลอล) จนกระทั่ง<a href="http://www.kitty.in.th/">ท่านอาจารย์ Kitty</a> ทนไม่ไหวเสียเอง ถึงกับต้องลงมือเขียนเองจนได้ <a href="http://kitty.in.th/index.php?room=blog;date=2005-10-09">GDictThai ภาคกะโนม</a> ออกมาจนได้<br /><br /><br /><br /> <br />ผู้ที่สนใจสามารถดาวน์โหลดได้ที่<br /><br /><br /> <br /><a href="ftp://ftp.kitty.in.th/pub/sources/gdictthai/">ftp://ftp.kitty.in.th/pub/sources/gdictthai/</a><br /><br /><br /> <br />ถ้าใช้แล้วมีปัญหาใด ๆ <a href="mailto:kitty@kitty.in.th">แจ้งบักไปที่ท่านอาจารย์ Kitty</a> ได้เลยนะครับ (ว่าแต่รับแจ้งแต่บัก แต่ไม่รับ wishlist หรือท่าน ;-)<br /><br /><br /><br /> <br />ขอแสดงความยินดี และก็ร่วมโปรโมทให้ด้วยครับท่าน :-)dongahttp://www.blogger.com/profile/14061304702900018286noreply@blogger.com7tag:blogger.com,1999:blog-10359973.post-1128828815560744592005-10-09T10:16:00.000+07:002005-10-09T10:41:18.766+07:00คำว่า "openSUSE" กับ "SUSE Linux" <br />เราเจอคำว่า "openSUSE" และคำว่า "SUSE Linux" มาได้ระยะหนึ่งแล้ว <b>แล้วสองคำนี้มันต่างกันอย่างไร ?</b><br /><br /><br /><br /> <br />คุณ <a href="http://www.kdedevelopers.org/blog/457">Stephan Binner (Beineri)</a> ได้บอกไว้ที่บล็อกของเขาว่า<br /><br /><br /><br /> <br /><b>"openSUSE" เป็นชื่อสำหรับโครงการในการพัฒนาเท่านั้น (only the name for the development project.)</b><br /><br /> <br /><b>"SUSE Linux" เป็นชื่อที่ใช้สำหรับดิสทริบิวชัน (name of the distribution)</b><br /><br /><br /><br /> <br />นั่นหมายความว่าเมื่อ<a href="http://www.opensuse.org"><b>โครงการ openSUSE</b></a> ประกาศออกรุ่นใหม่ ลินุกซ์ตัวนั้นควรจะถูกเรียกว่า <b>"SUSE Linux OSS"</b> ซึ่งหมายถึงลินุกซ์ดิสทริบิวชันที่ชื่อว่า <b>SUSE ที่เป็นรุ่น OpenSource</b> (รุ่นคอมเมอร์เชียลจะไม่มีคำว่า OSS)<br /><br /><br /><br /> <br />จะเห็นว่า หลาย ๆ คน (รวมทั้งผมด้วย อายจัง :P) แม้กระทั่งที่ wiki ของ <a href="http://www.opensuse.org">โครงการ openSUSE</a> เองก็ยังใช้คำว่า "openSUSE" กับ "SUSE Linux" เองไม่ถูกต้องเหมือนกัน คุณ Stephan Binner บอกเหตุผลเพิ่มเติมว่า อาจจะเนื่องมาจากที่ <a href="http://www.opensuse.org">http://www.opensuse.org</a> ใช้ระบบ wiki ซึ่งผู้ใช้ส่วนใหญ่สามารถทำการแก้ไขเองได้ทำให้เกิดความผิดพลาดในการใช้คำขึ้น <br />แต่ถ้าคุณเข้าไปที่เวบไซต์<a href="http://www.opensuse.org"><b>โครงการ openSUSE</b></a> ในตอนนี้ ก็จะเห็นว่าได้มีการแก้ไขคำให้เข้าใจถูกต้องตรงกันแล้ว<br /><br /><br /><br /> <br />ก็หวังว่าต่อไป เรา ๆ ชาวลินุกซ์ทั้งหลาย คงจะใช้คำเหล่านี้ให้ถูกต้อง และเข้าใจตรงกันนะครับ :Ddongahttp://www.blogger.com/profile/14061304702900018286noreply@blogger.com1tag:blogger.com,1999:blog-10359973.post-1128669242982495542005-10-07T13:20:00.000+07:002005-10-07T14:17:54.536+07:00SUSE 10.0 Released<center><img border=0 src="http://www.opensuse.org/skins/monobook/opensuse.gif"></center><br /><br /> มาแล้วครับ มาแล้ว <a href="http://www.novell.com/products/suselinux/">SUSE 10.0</a> และ <a href="http://www.opensuse.org/Released_Version">openSUSE 10.0</a> ตามคำมั่นสัญญาที่<a href="http://www.novell.com/">โนเวลล์</a>ได้ให้ไว้ ;-)<br><br /> สำหรับฟีเจอร์เด่น ๆ ที่มี ก็ไม่ค่อยจะฉีกแนว หรือปรับจากตัว Release Candidte 1 มากนัก โดยในรุ่นนี้ก็รองรับสถาปัตยกรรมหลายแบบ ทั้ง ix86, x86_64, PPC และ PPC64 ส่วนซอฟต์แวร์หรือคุณสมบัติเด่น ๆ ในรุ่นนี้ก็เช่น (ขอยกมาจากแพ็กเกจของ openSUSE นะครับ)<br /><ul><br /><li>Kernel 2.6.13 - ตัวนี้SUSE แพตช์มาค่อนข้างหนักเพื่อรองรับอุปกรณ์ต่าง ๆ ได้ดี</li><br /><li>GCC 4.0.2 - ใหม่มาก ๆ :P</li><br /><li>glibc 2.3.5 - No comments</li><br /><li>KDE 3.4.2 - รุ่นที่สเถียรล่าสุด</li><br /><li>GNOME 2.12 - รุ่นล่าสุดคือ 2.12.1</li><br /><li>OpenOffice 2 Beta (1.9 build 125) - ไม่ใหม่เท่าไหร่แฮะ</li><br /><li>Mozilla Firefox 1.0.6 - เอ๊ะ เห็นตัวอัพเดตของ SUSE เองมัน 1.0.7 แล้วไม่ใช่เรอะ ? :P</li><br /><li>Mozilla ThunderBird 1.0.6 - No comments</li><br /><li>Mozilla SunBird 0.2 - No comments</li><br /><li>PostgreSQL 8.0.3 - ก็ใหม่ดี</li><br /><li>MySQL 4.1.13 - No comments</li><br /><li>Gimp 2.2.8 และตัว unstable 2.3.3 - แจ๋ว</li><br /><li>อื่น ๆ อีกเยอะแยะ ตาแป๊ะไก๋ (คือแพ็กเกจมันเยอะจริง ๆ ครับ ตาลายน่ะ :P)</li><br /></ul><br /><br /> เมื่อนับข้อดีได้มากโขขนาดนี้แล้ว ก็ทำการดาวน์โหลดได้เลยครับ<br /><br /> <a href="http://www.opensuse.org/Download">Download openSUSE 10.0</a><br /><br /> ส่วนตัวผมเองก็กำลังทำการดาวน์โหลดอยู่เช่นกัน ;-) เด๋วต้องทำตัว modified กันอีกรอบ ถ้าเป็นไปได้ผมอยากจะตัดแผ่นชุด x86_64 ให้คุณหน่อยด้วย ไม่รู้ว่าจะทำได้หรือเปล่า (แต่ที่แน่ ๆ openSUSE มี gcc crossplatform มาให้เพียบเลย) แต่ว่าทำแล้วมันทดลองไม่ได้นี่สิ ปัญหาใหญ่ -_-"<br /><br /> จริง ๆ แล้วในช่วงนี้มีลินุกซ์ค่ายอื่น ๆ ก็ปล่อยรุ่นใหม่ของตนกันอย่างคึกคักอยู่หลายค่ายเหมือนกัน ไม่ว่าจะเป็น <a href="http://club.mandriva.com/xwiki/bin/view/Main/2006launch">Mandriva Linux 2006</a> หรือ <a href="http://www.ubuntu.com/">Ubuntu Linux 5.10 RC</a> แต่ผมคงไม่กล่าวถึง เนื่องจากไม่ใช่บล็อกข่าวแต่ประการใด อิอิ<br />dongahttp://www.blogger.com/profile/14061304702900018286noreply@blogger.com2tag:blogger.com,1999:blog-10359973.post-1128430933219667022005-10-04T19:27:00.000+07:002005-10-07T09:00:41.560+07:00Opera 8.50 บน OpenSUSE 10.0หลังจาก <a href="www.opera.com">Opera</a> 8.50 ประกาศปลดแอ(ก)ดหรือปลอดโฆษณาไปอย่างครึกโครมแล้ว ผมเองก็เป็นคนหนึ่งที่ไม่รีรอที่จะต้องไปทำการดาวน์โหลดมาใช้มั่ง โดยไปดาวน์โหลดที่<a href="www.opera.com">เวบไซต์ของ Opera</a>โดยตรง โดยเลือกเป็นแบบ RPM ของ <a href="http://www.novell.com/products/linuxprofessional/">SuSE</a> 9.3 กับ <a href="http://fedora.redhat.com/">Fedora</a> Core 4 เพื่อนำมาติดตั้งบน <a href="http://www.opensuse.org/">OpenSUSE</a> 10.0RC1 ตัวโปรด (โดยกะว่าถ้า RPM ของ SuSE 9.3 ใช้ไม่ได้ ก็คงจะใช้ของ Fedora Core 4 ได้ เนื่องจากใช้ <a href="http://gcc.gnu.org/">gcc</a> เวอร์ชัน 4 เหมือน ๆ กัน)<br /><br /><br /><br />ดาวน์โหลดเสร็จ ก็จัดแจงติดตั้งโดยแปลงร่างเป็น root กันซะก่อน ตามด้วยคำสั่ง rpm ที่แสนคุ้นเคย<br /><br /><pre><br /># rpm -Uvh opera-8.50-20050916.5-shared-qt.i386-en.rpm<br /></pre><br />ได้เมนู Opera มา ก็จัดแจงเรียกโปรแกรม ......<br /><br />.... เงียบบบบ และ เงียบบบ ..... วะ<br /><br />ชักสงสัย เปิดคอนโซลขึ้นมาเรียกดูว่ามันแจ้งข้อผิดพลาดอะไร<br /><br /><pre><br />donga@linux:~> opera<br /><b>Segmentation fault</b><br /></pre><br />-_-" งงเป็นไก่ตาแตก ไรกันเนี่ย ...<br /><br />เลยจัดการถอดถอนแพ็กเกจ Opera ของ SuSE 9.3 ออก เอาตัวของ Fedora Core 4 มาลงแทน แล้วทดสอบ<br /><br />... Segmentation fault เหมือนเดิมเด๊ะ ....<br /><br />โห ฉุน ๆ ๆ พักไว้ก่อนก็ได้ฟ่ะ ใช้ <a href="http://konqueror.kde.org">Konqueror</a> ต่อก็ได้ ไม่เห็นง้อ<br /><br />...<br /><br />หลังจากทิ้งช่วงไปหลายวัน ก็พบว่าทาง openSUSE ได้จัดทำ<a href="http://suse.inode.at/pub/i386/update/10.0/rpm/i586/opera-8.50-2.1.i586.rpm">แพ็กเกจ Opera ของ OpenSUSE 10.0</a> มาให้แล้ว เลยดาวน์โหลดมาลองของอีกที<br /><br /><pre><br />donga@linux:~# wget -c http://suse.inode.at/pub/i386/update/10.0/rpm/i586/opera-8.50-2.1.i586.rpm<br /></pre><br />เรียบร้อย จัดแจงติดตั้งตามกระบวนการเดิม แล้วทดลองโดยมีลุ้นอยู่ในใจ .....<br /><br />... Segmentation fault .... แป่ววววววว -_-"<br /><br />ลอง <b>ldd</b> ดู ก็ไม่เห็นว่า opera จะต้องการไลบรารีตัวไหนที่ไม่มีในระบบเพิ่ม<br /><br />ลอง <b>strace</b> ดู ก็ไม่เห็นว่าจะผิดพลาดอะไร นอกจากคำว่า Segmentation fault ก่อนจบ strace -_-!<br /><br />...<br /><br />ชะรอยฟ้ายังต้องเข้าข้างคนดี ;-)<br /><br />ขณะที่กำลังทดลอง <a href="http://www.eclipse.org/">eclipse</a> ที่ติดมากับ openSUSE 10.0 แล้วลองเรียก Help ของ eclipse ขึ้นมา จังหวะหนึ่ง เผอิญเผลอไปคลิ้กที่ลิ้งค์ที่เชื่อมโยงอยู่บนอินเตอร์เน็ตเข้า ...<br /><br /><b><i>ปรากฏว่ามันเรียก Opera ขึ้นมาให้อย่างน่าอัศจรรย์</i></b> ... โอ คุณแม่ช่วย กล้วยปิ้ง ...<br /><br />.. ผมไม่รอช้า รีบเรียกส่วนแสดง environment ของ eclipse ขึ้นมาดู (ผ่านกล่องโต้ตอบ About -> ปุ่ม Configuration Details) พบว่า มีส่วนหนึ่งของ <b>java.library.path</b> เป็นส่วนสุดท้ายที่แปลกตา นั่นคือมันชี้ไปยัง <b>/opt/mozilla/lib</b> ด้วย<br /><br />โอ ไม่รอช้าครับ ปิด eclipse, เปิดคอนโซล ลองเรียก opera จากคอนโซลดูมั่ง<br /><br /><pre><br />donga@linux:~> <b>LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/mozilla/lib</b> opera<br /></pre><br /><b>ปรากฏว่า มันรันได้จริง ๆ ด้วย :D</b><br /><br />จากนั้นเข้าไปบ่นใน <a href="http://linux.thai.net/cgiirc">irc ห้อง #tlwg</a> ซะหน่อย<br /><br />ก็ได้รับคำแนะนำจากคุณเด่นสินว่า ถ้าอยากรู้ว่ามันต้องการไลบรารีไหนกันแน่ ในเมื่อใช้ทั้ง ldd ก็แล้ว strace ก็แล้ว ก็ยังไม่รู้อยู่ดี ถ้ายังงั้นก็ให้ลองลบไลบรารีในไดเรกทอรี /opt/mozilla/lib ออกทีละตัว ๆ ดูดิ<br /><br />...เออ.. เข้าท่าแฮะ<br /><br />ลองไล่ลบไปเรื่อย ๆ จนพบว่ามันต้องการไลบรารี <b>libxpcom.so</b> โอ้ คุณแม่ช่วย.. พับผ่าเหอะ ...<br /><br /><br /><br />โอเค ก็รู้ปัญหา รู้วิธีแก้ คลายความข้องใจไปได้ :D<br /><br /><br /><br /><b>สุดท้ายผมใช้การเพิ่มพาธ /opt/mozilla/lib ให้กับ ld.so.conf แล้วสั่ง ldconfig อีกรอบ ก็ใช้การได้ตลอดแล้ว</b><br /><br />เย้ ๆ ๆ ๆ อิอิ<br />dongahttp://www.blogger.com/profile/14061304702900018286noreply@blogger.com0