ผมได้ทดลองติดตั้งระบบ Linux ตัวหนึ่งที่น่าสนใจมากคือ Arch Linux ซึ่งเป็น Linux ที่มีการอัพเดทโปรแกรมให้ใหม่สุดเสมอ และเป็น linux ที่ปรับแต่งได้มากมายสุดแท้แต่ฝีมือของแต่ละคน และมีวิธีการติดตั้งไม่ง่ายนัก จึงจัดทำขั้นตอนการติดตั้งเบื้องต้นดังนี้ครับ

... Read More

Ram Disk คือการนำหน่วยความจำหลัก ซึ่งก็คือ Ram มาสร้างหรือจำลองให้เป็นหน่วยความสำรอง หรือ Disk Drive นั่นเอง ซึ่งประโยชน์ก็เพื่อใช้เป็นที่พักข้อมูลหรือใช้เป็นส่วนการ caching ของระบบบางอย่าง ซึ่งการใช้ Ram มาสร้างเป็น Ram Disk นั้นจะให้ความเร็วในการอ่านเขียนไฟล์ข้อมูลได้อย่างรวดเร็วชนิดที่ผียังหลอกไม่ทันกันเลยทีเดียว ซึ่งในระบบ Ubuntu หรือ Linux ทั่วไปก็สามารถสร้าง Ram Disk ได้อย่างง่ายดาย โดยในการสร้าง Ram Disk จะมี 2 แบบ ให้เลือก คือ ramfs และ tmpfs โดยความแตกต่างกันนั้นคือ ramfs จะสร้าง Ram Disk โดยข้อมูลจะอยู่ใน Ram เท่านั้น และไม่สามารถกำหนดขอบเขตของ Ram Disk ได้ ซึ่งหากมีการเขียนข้อมูลเกินขนาดของ Ram แล้ว ระบบจะค้างและล่มไปเลยครับ ส่วน tmpfs นั้น จะเป็น Ram Disk ที่ข้อมูลจะอยู่ใน Ram เช่นกัน แต่หาก Ram มีการใช้งานไม่พอ อาจจะทำให้ข้อมูลย้ายจาก Ram ไปอยู่ใน Swap Memory ได้ และ tmpfs จะสามารถกำหนดขนาดของ Ram Disk ได้ครับ ซึ่งวิธีการสร้างนั้นก็ง่ายมาก ดังนี้ครับ

... Read More

ผมได้พัฒนาระบบตัวหนึ่ง ซึ่งจะต้องรองรับการเปิด Socket จำนวนมาก แล้วก็เจอปัญหาว่า error: [Errno 24] Too many open files เนื่องจากระบบได้จำกัดจำนวนการเปิดไฟล์จำนวนมาก ซึ่งรวมไปถึงการเปิด Socket ด้วยครับ ดังตัวอย่างนี้ครับ

... Read More

การพัฒนาระบบเวบแอปพลิเคชั่นที่ผ่านโปรโตคอล http นั้น ข้อมูลที่วิ่งในระบบจะไม่ถูกเข้ารหัส ทำให้อาจเกิดการดักจับข้อมูลหรืออื่น ๆ ซึ่งสร้างความไม่ปลอดภัยในการใช้งาน เพื่อความปลอดภัย เราควรให้เวบแอปพลิเคชั่นของเรา วิ่งบนโปรโตคอล https ซึ่งมีการเข้ารหัสข้อมูล และเราต้องใช้ SSL Certificate โดยต้องเสียตังให้กับองค์กรที่รับรองการออก SSL Certificate เหล่านี้ให้กับเรา แต่ถ้าเราอยากจะสร้าง SSL Certificate ของเราเอง เพื่อทดลองหรือใช้ภายในองค์กร เราก็สามารถทำได้ง่าย ๆ ในระบบ Ubuntu ด้วยคำสั่ง openssl ง่าย ๆ ดังนี้ครับ

... Read More

ในการใช้งาน Server บางครั้ง เราก็ต้องการให้ดาวน์โหลดข้อมูลต่าง ๆ โดยผ่าน Proxy เพื่อประโยชน์ในเรื่องของการ Caching ข้อมูล และประหยัด Bandwidth ของอินเตอร์เน็ต โดยใน Ubuntu Server นั้นเราสามารถกำหนด Proxy ได้โดยการแก้ไขไฟล์ /etc/environment ดังนี้ครับ

... Read More

ผมได้ลงระบบ Ubuntu Server ในระบบ KVM แล้วได้มีการเปลี่ยนค่า Mac Address เพื่อความสะดวกบางประการ ซึ่งเปรียบเสมือนการเปลี่ยน Network Card ทำให้เมื่อบูตระบบแล้ว ตัว Ubuntu Server อาจจะไม่เห็นหรือใช้งาน Network Card นั้นไม่ได้ แต่เรามีวิธีแก้ไข โดยทำการแก้ไขไฟล์ /etc/udev/rules.d/70-persistent-net.rules ดังนี้ครับ

... Read More

คราวก่อนผมได้ทดลองสร้างโปรแกรมเก็บ Proxy Log ด้วย Python ซึ่งใช้เทคนิคการสร้าง Process มารับงานแล้วสร้าง Thread มารับงานต่อ (บทความคราวก่อน) ครั้งนี้ผมได้ทดลองสร้าง Proxy Log ใหม่ด้วยเทคนิคการสร้าง Process Pool เลยอยากโพสเก็บไว้ดูวันหลังอีกดังนี้ครับ

... Read More

ผมได้ทดลองทำ Proxy Server ใหม่ด้วย Squid 3.3.8 และให้ส่ง Access Log ไปเก็บที่ Log Server ด้วย udp โดยใน Log Server ผมได้สร้างโปรแกรมที่ทำการรับ log จาก udp มาเก็บใน MySQL เพื่อความสะดวกในการดูแล ค้นหา และ สกัด log โดยรายละเอียดมีดังนี้ครับ

... Read More

ในการใช้งาน Ubuntu ซึ่งในตอนติดตั้งจะมีการสอบถามถึง location ที่ตั้งของคอมพิวเตอร์ของเรา เราก็จะกำหนดให้ระบบทราบว่า เราติดตั้งระบบในประเทศไทยเพื่อให้ระบบได้ติดตั้งพวก keyboard layout และระบบแสดงเวลาต่าง ๆ ให้ถูกต้อง แต่ก็จะเจอปัญหาเรื่องของการกำหนด locale ที่ผิดพลาด โดยในการติดตั้ง package ใหม่ก็จะเจอปัญหาดังนี้

... Read More

ในการทำ Virtualization (VM) นั้นมีหลายเทคโนโลยีและหลายค่าย แต่คราวนี้ผมจะแนะนำ Xen ซึ่งสามารถทำ VM ที่มีประสิทธิภาพด้วย Hardware-assisted Virtualization (HVM) ที่มีประสิทธิภาพ โดยจะทำ HVM ได้นั้นอาจจะต้องมีการปรับแต่งค่าใน bios ให้มีการ enable ความสามารถในส่วนนี้ก่อนนะครับ จึงจะสามารถทำ VM แบบ HVM ได้ โดยในครั้งนี้ผมจะแสดงวิธีการทำ VM บนระบบ Ubuntu 13.04 นะครับโดยมีขั้นตอนต่าง ๆ ดังนี้ครับ

... Read More