วันจันทร์ที่ 26 ตุลาคม พ.ศ. 2552

Recompiling Virtualbox Kernel Module

วันนี้เอาอีกสัก blog

ใครใช้ Virtualbox แล้วอัพเดท Linux kernal น่าจะเคยเจอว่า อาจจะ start VM ไม่ขึ้น
มีข้อความว่า 'The vboxdrv kernel module was either not loaded…' แล้วบอกให้ 'Re-setup the kernel module by executing ‘/etc/init.d/vboxdrv setup’ as root.'
recompile virtualbox ใหม่ก็ได้แล้ว
#sudo /etc/init.d/vboxdrv setup

สร้าง Icon เรียกโปรแกรมบน Desktop ของ Linux

บ่นๆก่อนเลยช่วงนี้แค่งานที่ office ก็หมดแรงแล้ว(จริงๆแล้วขี้เกียจ !^^)

พอดีลง Netbean แล้วมันสร้าง icon เรียกโปรแกรมไว้บนหน้า desktop จึงได้รู้
ตัวอย่างสคริปไฟล์ ~/Desktop/netbeans-6.7.1.desktop
[Desktop Entry]
Encoding=UTF-8
Name=NetBeans IDE 6.7.1
Exec=/bin/sh "/media/src/IDE/netbeans-6.7.1/bin/netbeans"
Icon=/media/src/IDE/netbeans-6.7.1/nb6.7/netbeans.png
Categories=Application;Development;Java;IDE
Version=1.0
StartupNotify=true
Type=Application
Terminal=0

แค่อ่านรายละเอียดก็พอรู้กันแล้วใช่ไหมว่าพารามิเตอร์แต่ละตัวมีความหมายว่าอย่างไรกันบ้างเอาหลักๆแล้วกัน
- Name เป็นชื่อที่จะเห็นบนหน้า desktop
- Icon เป็นรูปที่จะแสดงบนหน้า desktop
- Exec ตำแหน่งของโปรแกรมจริงๆ
- Terminal มีค่า 0 คือไม่ต้องเปิด terminal ขึ้นเป็น background

มันสร้างให้แต่ผมลบทิ้งรก desktop แต่เอาว่าได้รู้แล้วกันว่ามันมีวิธีนี้ในการสร้าง Icon ไว้เรียกโปรแกรมได้ด้วย อ๋อ OS Linux Ubuntu นะ Windows ไม่ต้องแปลกใจเพราะมันไม่มีจะทำได้ก็แค่ link อย่างเดียว (แอบกัด Windows ซะหน่อย)

วันพุธที่ 16 กันยายน พ.ศ. 2552

Java Decompiler

ตั้งแต่ย้ายมาทำงานบน Ubuntu เพิ่งจะได้มีโอกาศต้อง decompile โค้ดชาวบ้านเค้า ปกติจะใช้งาน Open source ซะส่วนใหญ่เลยสบายไป
หาๆเจอ JD-GUI, JD-Eclipse ที่นี่เลย Java Decompiler project ใช้ได้เลย

How to add a TrueType font to Java

To add a TrueType font to Java, just put the .TTF file in the /usr/java/jre/lib/fonts directory.

Note: you may need to restart the JVM to see it

Thank http://www.fileformat.info/tip/java/ttf.htm

วันจันทร์ที่ 31 สิงหาคม พ.ศ. 2552

การทำ Relationship Mapping ใน LDAP

บทความนี้ต่อเนื่องจาก ทำความเข้าใจ LDAP (แบบย่อๆ)
เนื่องจากโครงสร้างของ LDAP เป็น tree ไม่ใช้ table อย่าง RDBMS ปัญหาที่ตามมาคือจะใช้ LDAP เก็บข้อมูลที่มีความสัมพันธ์กันอย่างไร

การแม็พความสัมพันธ์มีหลายวิธีเช่น
1. Relations by DN
2. Relations by Attribute
3. Relations by Hierarchy
ในบทความนี้จะอธิบายแบบ Relations by DN ซึ่งเป็นวิธีที่ยืดหยุ่นและพบว่าใช้กันมาก

ต้องขอบคุณเอกสารจาก DataNucleus ที่ทำให้เข้าใจโครงสร้างข้อมูลของ LDAP สำหรับการนำไปใช้งาน

วันศุกร์ที่ 28 สิงหาคม พ.ศ. 2552

Narisa Tach Talk7 (#NTT7)

พรุ่งนี้เตรียมตื่นแต่เช้าไปงาน #NTT7
หลังจากงาน NJUG ซึ่งก็ผ่านมานาน มาครั้งนี้ค่อนข้างจะเป็นงานใหญ่เลยแหละ ได้ไปพบปะกับพี่ๆ(ตัวเป็นๆ อิๆๆ)
รายละเอียดของงาน Narisa Tech Talk 7.08.29
น่าติดตามทุก Session เลย
- Development process อย่าง Agile, TDD ของพี่ข้าวโพดหวาน อยากดูโปรเซส เทคนิคและเครื่องมือที่นำใช้
- Apache CouchDB ของพี่ @roofimon ดูสิว่ามันคืออะไรทำไมพี่รูฟจึงเปลี่ยนจาก TDD มาเป็น CouchDB ได้มันมีอะไรดีกัน
- DemoFest ช่วงดูโชดู ติดตาม OFBiz Framework มันง่ายขนาดไหน ตั้งแต่พี่ Sand เอามาโชในงาน NJUG ครั้งที่แล้วก็ยังไม่ได้แตะเลย
- Theory of constraint ของพี่ @pphetra พี่ป๊อกมาแนว workshop น่าจะทำให้เข้าใจได้ง่ายขึ้น
- Seam ตะเข็บยัก 555 เห็น @dean4j ละเชียร์จังเลย ถ้ามันแจ๋วได้เอามาใช้ร่วมกับ Spring เดี๋ยวเตรียมคำถามไปคอยถามดีกว่าเรื่อง conversation scope นี่แหละ
- Build and run many LOB applications on a single platform with xRM ชื่อยาวจริงๆของพี่ฟูเกียรติ ไม่รู้ว่าคืออะไรเลยลองหานิยามมันซักหน่อย
XRM is an application platform layer that accelerates the development of relational Line-of-Business applications and drives business results through an optimised infrastructure on the Microsoft Application Platform.
มันจะเหมือน OFBiz Framework รึเปล่าน้า

เตรียมเคลียร์หัวให้ว่างแล้วเจอกันพรุ่งนี้คับ

วันเสาร์ที่ 22 สิงหาคม พ.ศ. 2552

แก้ปัญหา HD ง่ายๆด้วย e2fsck

อธิบาย system ที่ใช้อยู่ซักหน่อย
- Ubuntu 9.04
- โปรแกรม Azureus
- External HD ใช้ file system เป็น EXT3

เปิด Azureus โหลดอยู่ดีๆ มีข้อความแจ้งมาประมาณว่าหาข้อมูลในตำแหน่งนั้นไม่พบ เลยเปิดเข้าไปดูในโฟลเดอร์ที่โหลดไฟล์หน่อยสิ
อ้าวเฮ้ยไม่มีไฟล์อยู่จริงด้วย งั้นลองปิดให้ HD ได้พักสักหน่อย เปิดขึ้นมาร้องจ๊ากเลย เป็นอีกแล้วหรอ mount partition ไม่ได้
ก่อนหน้านี้ก็เคยเป็นไปใช้โปรแกรมกู้ข้อมูล กู้เอาเสียเวลาม๊ากกก แถมต้องมี HD อีกตัวมาเก็บข้อมูลที่กู้ด้วย รอบนี้จำไม่ได้ด้วยว่าเคยกู้มายังไงจำได้ว่าใช้โปรแกรมบน windows กู้เอา
รอบนี้ขี้เกียจ ไหนๆก็ไหนๆแล้วอ่านข้อความที่เมื่อพยายาม mount HD ผ่าน nautilus ดูหน่อย มันบอก block error อะไรสักอย่าง รายละเอียดให้ไปอ่าน message จาก kernal โดยใช้คำสั่ง
#dmesg | tail

สิ่งที่พบคือ
[ 65.273067] EXT3-fs warning: mounting fs with errors, running e2fsck is recommended
[ 65.273406] EXT3 FS on sdb5, internal journal

หาข้อมูลสักหน่อยก็ลุยด้วยคำสั่ง
#sudo e2fsck -C0 -f -v /dev/sdb1

นั่งรอไปสักครึ่งชั่วโมง อ้อลืมใส่ -y นั่งตอบ yes ไปเรื่อยๆด้วย(เมื่อยเลย) ตอนแรกใช้ -p ให้มันกู้แบบอัตโนมัติให้แต่มันบอกให้รัน manual แทน ==" เลยลืมใส่ -y เลย

ปรากฎว่า e2fsck แก้ไข ข้อมูลที่ผิดพลาดได้เรียบร้อยดี

คติเตือนใจ อ่านคำแนะนำของระบบด้วย ถึงแม้ว่าในหลายๆครั้งจะอ่านไม่รู้เรื่อง แต่บางครั้งมันมีประโยชน์(จริงๆนะ)
EXT3 สุดยอดดด