การเปลี่ยน Network Interface Card (NIC) ใน Fedora 9

บทความนี้จะอธิบายการเปลี่ยน Network Interface Card (NIC) โดยแทนที่การ์ดใบเก่า ด้วยการ์ดใบใหม่ที่มี MAC Address ไม่เหมือนกัน แต่ต้องการใช้งานเหมือนเดิม เช่นให้ใช้ชื่อเป็น eth0 และคอนฟิกต่างๆ เหมือนเดิม

โดยดีฟอลต์แล้วใน Fedora หรือ Linux Distribution อื่นๆ ที่เป็นเวอร์ชั่นใหม่ๆ จะมีโปรแกรมช่วยในการจัดการการเปลี่ยนแปลงอุปกรณ์ (Hardware) ของเครื่องโดยอัตโนมัติ ที่มีชื่อว่า udev โดยโปรแกรมนี้จะสร้างคอนฟิกแบบพื้นฐานเพื่อให้สามารถใช้งานได้เลย ซึ่งจะเก็บคอนฟิกไว้ใน /etc/udev/

ซึ่งทำให้เมื่อเปลี่ยน Network Interface Card เป็นการ์ดใบใหม่ โปรแกรม udev ตรวจสอบว่ามีการเปลี่ยนแปลงของอุปกรณ์ ซึ่งดูได้จาก MAC Address ที่เปลี่ยนแปลง โปรแกรม udev ก็จะสร้างคอนฟิกใหม่ ซึ่งอาจจะสร้างเป็น eth1 ได้

Continue reading “การเปลี่ยน Network Interface Card (NIC) ใน Fedora 9”

การเปลี่ยนชื่อเครื่อง (hostname) ใน Fedora 9

บทความนี้อธิบายถึงวิธีการเปลี่ยนชื่อเครื่อง (hostname) ใน Fedora ด้วยวิธีแก้ไขไฟล์คอนฟิกโดยตรง ไม่ได้ใช้โปรแกรมช่วยในการแก้ไข ในตัวอย่างจะเป็นการเปลี่ยนชื่อเครื่องจากชื่อ oldname.your-domain.com ไปเป็น newname.your-domain.com

หมายเหตุ บทความนี้อธิบายเฉพาะการเปลี่ยนแปลงชื่อเครื่องพื้นฐานเท่านั้น ซึ่งหลังจากเปลี่ยนชื่อนั้แล้ว คุณอาจจำเป็นต้องเปลี่ยนชื่อในคอนฟิกส่วนอื่นๆ ด้วยเช่น ใน Mail Server, Web Server, File Sharing Server หรือชื่อที่ลงทะเบียนไว้ใน DNS Server

Continue reading “การเปลี่ยนชื่อเครื่อง (hostname) ใน Fedora 9”

คอนฟิกให้ authenticate จาก Fedora Directory Server

หลังจากที่เราติดตั้งและคอนฟิก Fedora Directory Server เรียบร้อยแล้ว ในบทความนี้จะอธิบายถึงการเก็บ UNIX User Account และ Group เข้าไปใน LDAP เพื่อที่จะใช้รองรับการ authentication จากโปรแกรมต่างได้ เช่น สำหรับการ login, secure shell และอื่นๆ

Continue reading “คอนฟิกให้ authenticate จาก Fedora Directory Server”

การเขียนโปรแกรม PHP เพื่อสร้าง barcode

บทความนี้ขอกล่าวถึงการเขียนโปรแกรม PHP เพื่อสร้าง barcode ในรูปภาพในแบบต่างๆ ได้

Continue reading “การเขียนโปรแกรม PHP เพื่อสร้าง barcode”

การสร้าง svn repository

Subversion เป็นระบบควบคุมเวอร์ชั่นของไฟล์ เหมือนกับ CVS ประโยชน์คือทำให้ผู้ใช้งานสามารถที่จะร่วมกับพัฒนา แก้ไข เปลี่ยนแปลงไฟล์ต่างๆ ด้วยกันได้

เมื่อมีการเปลี่ยนแปลงไฟล์ในแต่ละครั้งจะมีเลขเวอร์ชั่นกำกับอยู่เสมอเพื่อเก็บประวัติการเปลี่ยนแปลงของไฟล์นั้นได้ ทำให้เราสามารถที่จะตรวจสอบการเปลี่ยนแปลงในแต่ละเวอร์ชั่น หรือสามารถย้อนกลับไปเป็นไฟล์ในเวอร์ชั่นที่เราต้องการได้

ทำให้ subversion เป็นระบบที่เหมาะสม และจำเป็นอย่างยิ่งในการพัฒนาโปรแกรม ยิ่งโดยเฉพาะมีนักพัฒนาหรือโปรแกรมเมอร์หลายคน

ในบทความนี้จะอธิบายการเริ่มต้นสร้าง repository ขึ้นมาเพื่อเก็บไฟล์ทั้งหมด โดยในตอนแรกนี้จะติดตั้งเป็นแบบ local ก่อน คืออยู่ในเครื่องเดียวกันที่รันคำสั่ง svn นั่นเอง

Continue reading “การสร้าง svn repository”

การใช้คำสั่ง nsupdate เพื่อปรับปรุง record ใน DNS Server

จากบทความ คอนฟิก DDNS บนลินุกซ์ เมื่อคอนฟิก DNS Server ให้สามารถรองรับ Dynamic Update จาก DHCP Server ได้นั้น

ถ้าเราต้องการจะแก้ไขข้อมูล (record) ใน DNS Server หลังจากนี้ เช่นเพิ่ม (A record) name-to-ip address mapping เราไม่สามารถจะแก้ไขไฟล์ข้อมูลของแต่ละ zone ได้โดยตรง เพราะคุณสมบัติ DDNS จะไปปรับปรุงรูปแบบของไฟล์คอนฟิก zone ซึ่งถ้าเราไปแก้ไขเองโดยตรงเช่นใช้โปรแกรม vi รูปแบบของไฟล์นี้อาจเสียหายได้

วิธีที่จะทำได้อย่างถูกต้องนั้น ต้องใช้คำสั่ง nsupdate ซึ่งจะใช้ส่งคำสั่งในการเพิ่ม หรือลบข้อมูล (record) จาก DNS Server ได้

Continue reading “การใช้คำสั่ง nsupdate เพื่อปรับปรุง record ใน DNS Server”

ติดตั้งและคอนฟิก Fedora Directory Server เบื้องต้น

Fedora Directory Server เป็น LDAP Server โปรแกรมหนึ่ง  ซึ่งมีคุณสมบัติที่ใกล้เคียงกับ OpenLDAP แต่จะมีโปรแกรมหน้าจอ (console) ช่วยในการจัดการ ตั้งค่า คอนฟิกต่างๆ ใน LDAP Server ได้สะดวกมากขึ้น

ในบทความนี้จะกล่าวถึงการติดตั้งโปรแกรมและคอนฟิก Fedora Directory Server เบื้องต้น เพื่อสร้างคอนฟิกของ directory พื้นฐานสำหรับการใช้งานต่อไป

Continue reading “ติดตั้งและคอนฟิก Fedora Directory Server เบื้องต้น”

สร้าง Linux Partition ที่มีขนาดมากกว่า 2TB

คำเตือน: โปรดระมัดระวังเวลาจัดการเกี่ยวกับ Partition เพราะถ้าอ้างอิงชื่อผิด เช่น จาก /dev/sdb พิมพ์เป็น /dev/sda จะทำให้ข้อมูลในฮาร์ดดิสก์นั้นเสียหายไปได้

บทความนี้ขอกล่าวถึงการใช้คำสั่ง parted สร้าง Linux Partition ที่มีขนาดมากกว่า 2TB ซึ่งจะไม่สามารถสร้างได้โดยใช้คำสั่ง fdisk เพราะว่าการใช้คำสั่ง fdisk ในการสร้าง partition นั้นจะสามารถสร้างขนาดได้มากสุดได้แค่ 2TB เท่านั้น ตามตัวอย่างด้านล่างนี้

Continue reading “สร้าง Linux Partition ที่มีขนาดมากกว่า 2TB”

สร้าง index ในฐานข้อมูล MySQL

จากที่ตั้งใจไว้ตั้งแต่แรกคือเมื่อเจอประสบการณ์ทำงานอะไร ที่น่าจะเป็นประโยชน์แก่ผู้อื่น จะนำมาเขียนเล่าสูกันฟัง วันนี้ขอแนะนำการเพิ่มความเร็วในการค้นหาข้อมูลจากฐานข้อมูล MySQL เพียงแค่พิมพ์คำสั่งเดียวเท่านั้น เพื่อสร้าง index ของฟิลด์ที่ใช้ในการค้นหา

คำเตือน! การทดสอบแนะนำให้ทำบนเครื่องทดลองเท่านั้น เมื่อได้ผลลัพธ์ที่ต้องการแล้ว ค่อยไปปรับใช้กับเครื่องจริง

ฐานข้อมูลที่ทดลองปรับปรุง ใช้เก็บข้อมูลสินค้าของบริษัท ปัญหาที่พบคือเวลาค้นหาชื่อสินค้าโดยพิมพ์ชื่อแล้วกดค้นหา ต้องรอสักพักกว่าจะขึ้น ทั้งๆ ที่มีจำนวน record ประมาณ 60,000 แถว เท่านั้น เมื่อตรวจสอบรายละเอียดของ table แล้ว จะเป็นประมาณนี้

Continue reading “สร้าง index ในฐานข้อมูล MySQL”

คอนฟิก OpenVPN แบบ Static Key บน Fedora Linux

บทความนี้จะแนะนำการคอนฟิก OpenVPN ซึ่งเป็นโปรแกรม VPN อันหนึ่งที่นิยมใช้กันอย่างแพร่หลายบนลินุกซ์ โดยจะคอนฟิกในรูปแบบง่ายที่สุด คือเป็นแบบ static key เพื่อศึกษาทำความเข้าใจกับ OpenVPN ก่อนที่จะปรับปรุงเป็นแบบคอนฟิกที่ใช้ Public/Private key ซึ่งจะมีคุณสมบัติมากกว่าพร้อมทั้งความปลอดภัยที่ดีกว่าด้วย

Continue reading “คอนฟิก OpenVPN แบบ Static Key บน Fedora Linux”