Techno-geeks

วิธีการกำหนด Locale ภาษาไทย ให้กับ Ubunutu 8.04

หลังจากที่เรา install Ubuntu 8.04 และลง package ต่าง ๆ ที่เกี่ยวข้องกับภาษาไทยเรียบร้อยแล้ว การใช้งานภาษาไทยก็ยังจะไม่สมบูรณ์ ยกตัวอย่างเช่น nautilus จะไม่สามารถเรียงลำดับชื่อไฟล์ที่เป็นภาษาไทยได้ถูกต้อง วิธีการแก้ไขก็คือเราต้องกำหนดค่า Locale ที่ใช้ให้เป็นภาษาไทยด้วย ซึ่งมีวิธีการดังนี้:

วิธีการแปลง Red Hat Enterprise Linux (RHEL) 5 ให้เป็น CentOS 5

เจ้าเครื่องเซิร์ฟเวอร์ Dell PowerEdge R200 ที่บริษัทผมเพิ่งซื้อมา นี่ทำผมแสบมาก ๆ อุตส่าห์ซื้อมาจะใช้กับ Ubuntu Server ซะหน่อย แต่ก็ติดปัญหาที่ว่า Hardware RAID controller card ที่ติดมากับเครื่องนั้นคือ Dell SAS 6/iR มี Driver สำหรับ Red Hat กับ SuSE เท่านั้น แล้วก็ดันไม่มี source ให้ compile เองด้วยผมละเซ็งจริง ๆ ถ้าไม่ลง Driver ดังกล่าวผมก็ไม่สามารถตรวจสอบสถานะของ Disk ได้ ก็ไม่รู้จะทำ RAID-1 ไปทำไม อย่างนี้โทษใครไม่ได้นอกจากตัวเอง ผมเลยขอเตือนทุกท่านให้เป็นอุทาหรณ์ก่อนเลยว่าถ้าท่านจะซื้อเครื่องเซิร์ฟเวอร์มาใช้กับ Ubuntu Linux ก็ควรจะดูก่อนว่า เครื่องเซิร์ฟเวอร์ดังกล่าวลง Ubuntu ได้หรือไม่ ซึ่งสามารถตรวจสอบได้ http://webapps.ubuntu.com/certification/list/?category=Server

ดังนั้นผมเลยต้องจำใจติดตั้ง RHEL 5 บนเครื่องเซิร์ฟเวอร์ของผม คราวนี้ผมก็สามารถตรวจสอบสถานะของ RAID ได้แล้วแต่ปัญหาก็ยังไม่จบสิ้นคือ ถ้าผมใช้ RHEL ผมก็ต้อง subscribe กับทาง Red Hat ก่อนจึงจะสามารถ update โปรแกรมต่าง ๆ ได้ซึ่งค่า subscription มันก็แพงเอาการอยู่ ผมเลยต้องหาทางวิธีเปลี่ยน RHEL ให้เป็น CentOS โดยไม่ต้อง install ใหม่ ซึ่งมีวิธีการดังต่อไปนี้...

วิธี Configure IP Address บน Linux และ คำสั่งเกี่ยวกับ Network ที่น่าสนใจ

เมื่ออาทิตย์ที่แล้วผมต้องติดตั้ง Ubuntu 8.04 Server Edition ลงบนเครื่องเซิร์ฟเวอร์ Dell PowerEdge 200 ที่เพิ่งซื้อมาใหม่ทั้ง 3 เครื่อง สิ่งหนึ่งที่ผมต้องทำระหว่างติดตั้งก็คือการ Configure IP Address และการใช้คำสั่งเกี่ยวกับ Network บน command line...

ผมเห็นว่าวิธีการ Configure IP Address และการใช้ network command บน Linux จริง ๆ แล้วมันก็ไม่ได้น่ากลัวอะไร แต่ผู้ใช้มือใหม่ไม่กล้าใช้กัน ประกอบกับผมไปเจอบทความดี ๆ เข้า ก็เลยผมอยากแปลเพื่อเผยแพร่และรวมรวมคำสั่งเกี่ยวกับ network ต่าง ๆ ที่น่าสนใจ เพื่อที่จะได้เป็นประโยชน์กับผู้อื่นดีกว่า

โปรแกรม หาผลรวม และ ค่าเฉลี่ย (เขียนด้วยภาษา Python)

พอดีเมื่อวานผมจำเป็นต้องทำงานประมวลผลข้อมูลตัวเลขที่รับมาจาก standard input แต่ละบรรทัด แล้วนำตัวเลขเหล่านั้นไปหาผลรวมและค่าเฉลี่ย (ตัวเลขพวกนี้เป็นผลลัพธ์จากการรันอีกโปรแกรมหนึ่ง) ผมก็นึกหาคำสั่งใน Linux/Unix ว่ามีคำสั่งพวกหาผลรวมทุกบรรทัดว่ามีหรือเปล่าแต่ก็นึกไม่ออก เลยลองถามพี่เฉิงดูว่ามีคำสั่งดังกล่าวหรือไม่ แต่ผมก็ได้รับข่าวร้ายและข่าวดีจากพี่เฉิงว่า "ไม่มี tool นี้หรอก แต่พี่มี perl script เขียนไว้แล้ว" ผมล่ะปลาบปลื้มปิติจริง ๆ ที่มีรุ่นพี่เก่ง ๆ อย่างพี่เฉิงคอยแนะนำ ผมจึงนำเอา perl script ของพี่เฉิงมาใช้งานซึ่งมันก็สามารถทำงานได้ดีทีเดียว แต่ทว่าผมเขียน Perl ไม่เป็น และ script ของพี่เฉิงก็ยังมีบักนิดหน่อยในกรณีที่ไม่มี input เข้ามามันจะเกิดข้อผิดพลาดแบบ division by zero ขึ้น...

ดังนั้นผมเลยนำมาเขียนใหม่ด้วยภาษา Python เพื่อที่ผมจะได้แก้ไขปรับปรุงได้เองในอนาคต จึงได้โปรแกรมซึ่งมีชื่อว่า sumstat.py ดังนี้:

A Hacker's Diary ตอน Spoof Mac Address บน Linux

คำเตือน: สิ่งที่ท่านจะได้อ่านต่อไปนี้เป็นเพียงเหตุการณ์สมมติเท่านั้น และผู้เขียนไม่ได้มีเจตนาที่จะเผยแพร่ความรู้เพื่อนำใช้ในทางที่ผิด หากมีผู้ใดนำไปความรู้จากบทความนี้ไปประยุกต์ใช้ในทางที่ผิด หรือกระทำการใด ๆ ที่ผิดกฎหมาย หรือ ศีลธรรม ทางผู้เขียนไม่ขอรับผิดชอบใด ๆ ทั้งสิ้น

เมื่อสัปดาห์ที่ผ่านมาผมมีความจำเป็นต้องไปฟังสัมมนาที่มหาวิทยาลัยแห่งหนึ่ง แต่เผอิญผมไปถึงก่อนเวลานานมาก ๆ เลย จึงอยากหาอะไรทำแก้เซ็ง อาการติดเน็ตเลยกำเริบ ผมเลยลอง check สัญญาณ Wi-Fi ดู ผมก็พบว่าแถว ๆ ที่ผมนั่งอยู่นี้มี Wireless Lan ของมหาวิทยาลัยดังกล่าวให้ใช้ด้วย ซึ่งไม่ได้มีการเข้ารหัสอะไรเลย อย่างนี้ก็เสร็จผมสิครับ ผมเดาว่าวิธีการป้องกันการใช้งานของมหาวิทยาลัยแห่งนี้ก็คงเพียงแค่ให้ นิสิต/นักศึกษา มาลงทะเบียน MAC Address ของตนไว้เพียงเท่านั้นก็สามารถใช้งาน Wireless Lan ได้แล้ว ประกอบกับผมเห็นว่ามีน้องนักศึกษาสาวที่นั่งอยู่ใกล้ ๆ กำลังแซ็ตบน Laptop ของเธออย่างเมามัน ฉะนั้นเพื่อสนองความต้องการใช้อินเตอร์เน็ตของผม ปฎิบัติการ Spoof MAC Address จึงเริ่มต้นขึ้น...

วิธีการติดตั้ง Driver ของ Wireless Adapter ที่ใช้ chipset RT73 บน Ubuntu

ผมมี Wireless USB Adapter ของ Edimax รุ่น EW7318USg อยู่อันหนึ่งพอดีวันนี้นึกอยากจะเอามาใช้บนเครื่อง Laptop ของผมซึ่งใช้ Ubuntu 8.04 ซึ่งเจ้า Wireless USB Adaper ตัวนี้ไม่สามารถใช้งานบน Linux ได้เลยทันที ดังนั้นเราจึงต้องลง Driver ก่อนจึงจะสามารถใช้งาน ซึ่ง Driver ที่ผมใช้ก็ดาวน์โหลดมาจาก http://rt2x00.serialmonkey.com ส่วนวิธีการติดตั้ง driver มีขั้นตอนดังนี้:

วิธีลบข้อมูลที่ซ้ำกันออกจากตารางสำหรับระบบฐานข้อมูล MySQL (How to delete duplicate records in a MySQL database)

คุณอาจจะเคยพบกับปัญหาที่ว่าข้อมูลในตารางนั้นมีข้อมูลซ้ำ ๆ วันนี้ผมก็พบเข้ากับตัวเอง ด้วยเหตุที่ว่าวันนี้เว็บของลูกค้าผมซึ่งสร้างด้วย Drupal ไม่สามารถเข้าไปดูในหน้าของ Organic Subgroup Module ได้เพราะว่าเกิด time out ทุกครั้งที่เข้าไปดูหน้านี้ ผมจึงคิดว่าปัญหาน่าจะอยู่จากระบบฐานข้อมูล ของ Organic Subgroup Module โดยข้อมูลของ Module นี้เก็บอยู่ในตารางเพียงตารางเดียวที่ชื่อว่า "og_ancestry" ซึ่งโครงสร้างข้อมูลในตารางนี้จะมีลักษณะเป็น Tree แน่นอนผมคิดว่าปัญหาน่าจะมาจากการที่มีการอ้างอิงของข้อมูล (reference) ที่ไม่ถูกต้องจนเกิดการอ้างอิงแบบวงวน (circular reference) ซึ่งทำให้ function ที่ query ข้อมูลในตารางนี้แบบ recursive นั้นทำงานไม่รู้จบ จึงเกิด time out ขึ้น ดังนั้นจึงลอง query ข้อมูลในตารางนี้ดู ผมก็พบว่าในตาราง "og_ancestry" นั้นมีข้อมูลซ้ำๆ กันเป็นจำนวนมาก เจองี้เข้าก็อึ้งสิครับ แล้วอย่างนี้ผมจะหาได้หรือเปล่าว่าข้อมูลอันไหนที่ทำให้เกิด loop? ดังนั้นผมจึงควรลบข้อมูลที่ซ้ำๆกันออกไปก่อนเพื่อให้ง่ายต่อการวิเศราะห์ข้อมูล แล้ววิธีการลบข้อมูลที่ซ้ำ ๆ กันล่ะจะทำได้อย่างไร?...

ความเชื่อผิด ๆ เกี่ยวกับการเลือกระบบปฏิบัติการ(Operating System)และความมั่นคงปลอดภัยทางคอมพิวเตอร์ (Computer Security)?

ต่อไปนี้เป็นความคิดเห็นส่วนตัวของผมนะครับ ที่ผมเขียน blog entry นี้เพราะว่าหลาย ๆ ครั้งที่ผมเห็นคนถกเถียงกันแทบเป็นแทบตายตอนเลือก OS สำหรับเครื่องเซิร์ฟเวอร์ที่ไม่ต้องการให้แฮกเกอร์บุกรุกได้เช่น อย่าใช้ Windows เลยใช้ Linux ปลอดภัยกว่า หรือ Linux มันยังไม่ค่อยปลอดภัยต้องใช้พวก BSD หรือแม้กระทั่ง FreeBSD ก็ยังไม่ปลอดภัย ต้อง OpenBSDสิ ถึงจะปลอดภัยที่สุด

วิธีการทำให้ Subversion ไม่สนใจ(ignore)ไฟล์หรือไดเร็คทอรี่ (Subversion and svn:ignore property)

หากใครเคยใช้ Subversion ก็คงจะทราบดีว่าในบางครั้งเราก็อาจจะมีไฟล์/ไดเร็คทอรี่ที่เราต้องการใช้เฉพาะบนเครื่องของเราเอง และไม่ต้องการที่จะ commit ไฟล์/ไดเร็คทอรี่เหล่านั้นกลับเข้าไปยัง repository ซึ่งโดยส่วนตัวกรณีที่เกิดขึ้นกับผมก็คือ ผมทำงานเขียนโปรแกรมภาษา Java ด้วย Eclipse IDE แต่ทีมของผมไม่ได้ใช้ Eclipse IDE กันทุกคน หรือแม้ว่ามีบางคนใช้ Eclipse IDE แต่ก็ก็ทำงานบน Environment ที่ต่างกันออกไป เช่นผมทำงานบน Linux แต่คนอื่น ๆ ในทีมใช้ Windows เป็นต้น ฉะนั้นผมจึงไม่ต้องการที่จะ commit ไฟล์ที่ เกี่ยวกับ Eclipse Project และ Binary File กลับเข้าไปใน repository เพราะว่า ถ้าผม commit ไฟล์นี้เข้าไปเวลาคนอื่น ๆ check out ออกมา ก็จะต้องมาแก้ไขไฟล์เหล่านั้นเพื่อให้เหมาะสมกับ environment ของตนอีก ซึ่งจะนำไปสู่การ conflict ของไฟล์เหล่านั้นได้ง่าย ๆ และ คงปวดหัวน่าดูในการ maintenance ไฟล์เหล่านี้ ฉะนั้นผมจึงต้องหาวิธีที่จะทำให้ Subversion ไม่สนใจไฟล์เหล่านี้ ซึ่งทำได้ง่าย ๆ ดังนี้...

How to restore GRUB to a partition or MBR with an Ubuntu Live CD

One of the most annoying thing about re-install Windows XP in my dual-boot laptop is that MBR is overwritten. In other words, GRUB is lost and I cannot boot my beloved Ubuntu. So, I have to restore it with a few easy steps as follows:

ญาณรักข์ วรรณสาย
Syndicate content