เมื่อวานลงเครื่องให้น้องสำหรับลอง Node.js app ก็ดาวโหลดมาคอมไพล์ปกติดี ลองรัน node ปรากฏว่ามันค้างนิ่งๆ ก็คิดว่าปกติไม่ได้ทำอะไรต่อ จนมาวันนี้น้องทักว่ามันอาการไม่ปกติ เลยต้องมาหาวิธีลงใหม่ ขุดไปมาพบว่าเป็นเพราะ v8 ที่ทำให้ Node.js มีปัญหา วันนี้ก็เลยเอามาลองใหม่เริ่มจาก clone v8 มาก่อน ที่เลือก clone จาก git เพราะจะได้ switch branch สะดวกหลังจากได้ v8 มาก็ compile ออกมาเป็น library ก่อนที่จะ compile ได้ต้องติด scons ด้วยสำหรับ FreeBSD อยู่ใน /usr/ports/devel/scons compile เสร็จก็ copy library ไปที่ /usr/local/lib และดาวโหลด node.js และติดตั้ง compile node เสร็จก็ติดตั้ง จากนั้นก็ใช้ Node.js ได้ตามปกติ
Munin
บันทึกเตือนความจำอีกแล้ว จริงๆเคยเขียนไปแล้วแต่คราวที่แล้วใช้ Trac ซึ่งอายุมันไม่ค่อยยืนหายไปบ่อยๆ เลยเอามาเขียนลงบล๊อกนี่แหละ ปลอดภัยดี(หรือป่าว – -”) ยังมีหลายๆ เรื่องที่เคยเขียนไปแล้วหายไป เช่น วิธีทำให้ SVN/Trac Authenticate กับ Unix password อะไรทำนองนี้อีกหลายเรื่อง ไว้นึกได้แล้วจะค่อยๆ เขียนเก็บไว้ละกัน [Munin](http://munin.projects.linpro.no/) เป็นโปรแกรมที่ใช้สร้างกราฟรายงานสถานะของเซิร์ฟเวอร์ว่าใช้อะไรไปเท่าไหร่แล้วบ้าง และก็สามารถแสดงสถานะของบริการต่างๆ ที่เซิร์ฟเวอร์เปิดไว้อยู่ด้วย เช่น Apache และ MySQL ถ้ายังนึกไม่ออกไปดูที่ [monitor.nytes.net](http://monitor.nytes.net) ละกันมีอยู่สามเซิร์ฟเวอร์สามารถดูเป็นรายวันพร้อมกันได้ด้วย สำหรับเหตุผลว่าทำไมเลือกใช้ Munin ทั้งๆ ที่มีอย่างอื่นที่น่าจะดีกว่าเยอะแยะ เช่น [zabbix](http://www.zabbix.com/) หรืออื่นๆ อีกมากมายดูได้ที่ [wiki](http://en.wikipedia.org/wiki/Comparison_of_network_monitoring_systems) เพราะว่ามันติดตั้งง่ายและก็ไม่ต้องตั้งค่าไรมาก(ของเพื่อนไม่ต้องตั้งไรเลย ลงจาก port อย่างเดียว) แล้วกราฟก็หน้าตาใช้ได้ไม่ได้หน้าเกลียดอะไร เรียกว่าสวยงามใช้ได้ทีเดียวด้วยซ้ำ ตัว Munin จริงๆ แล้วประกอบด้วยสองส่วนคือ munin-node และ munin-main ปัจจุบันที่อยู่ใน port [...]
mod_proxy
ทำไว้เมื่อสองหรือสามอาทิตย์ก่อนไม่แน่ใจแต่ไม่ได้จดไว้ เดี๊ยวลืมวันนี้ว่างๆ เลยจดไว้ซะหน่อย(ว่างจริงหรอฟะ) สำหรับปัญหาที่ทำให้ต้องติดก็คือ เวลามีคนมาโหลดไฟล์ใหญ่ๆ จากเซิร์ฟเวอร์มากๆ เนี๊ยะเว็บเซิร์ฟเวอร์ที่แสนดีอย่าง Apache มันก็จะอืดลงไปทันตาเห็น คือเข้าเว็บที่เป็น php ธรรมดากว่าจะประมวลผลแล้วส่งกลับมาต้องรอเป็นนาที ไม่รู้มันทำอะไรของมัน แต่จะทิ้งไว้ก็ใช่ที่ ฉะนั้นอย่ารอช้าเลย เอาพวกไฟล์ใหญ่ๆ เหล่านี้ย้ายไปให้ lighttpd ทำแทนดีกว่า มันตายไปตัวหลักก็ยังรอดด้วย(แต่เท่าที่เห็น มันไม่เคยตายเลยแฮะ ทนกว่า Apache อีก -_-”) อ้อสำหรับใครที่ยังไม่รู้ว่าผมทำอะไร ทำไมมันถึงมีไฟล์ขนาดใหญ่ จริงๆ แล้วเซิร์ฟเวอร์นี้มีโดเมนย่อยอยู่อันนึงไว้เป็นที่ดาวโหลดลินุกซ์(และอื่นๆ อีกมากมายสำหรับเขียนโปรแกรม) เก็บไว้อยู่ด้วย ใครอยากดูหรืออยากโหลดก็เข้าไปที่ http://mirror.nytes.net ได้หรืออยากให้เพิ่มอะไรที่ไม่เถื่อนก็บอกมาละกัน ถ้าพื้นที่ยังเพียงพอก็จะพยายามยัดเข้าไปให้ อ่าวบ่นเยอะและเขียนวิธีทำบ้างดีกว่า เริ่มจากติด lighttpd ก่อนโดยไปที่ /usr/port/www/lighttpd แล้วก็ make install ธรรมดาอันนี้ไม่มีอะไรพิเศษ ไปที่ /usr/port/www/apache22 แล้ว make config จากนั้นเลือก mod_proxy, mod_proxy_connect และ mod_proxy_http เพิ่มแล้วก็เลือก [...]
Redmine กับ Phusion Passenger™
เนื่องจากกำลังทำโฮสท์เพื่อให้คนอื่นเข้ามาใช้ ruby on rails อยู่ก็เลยต้องลองเล่น mod ต่างๆ กับหาทางให้ apache นิ่งสำหรับ mod ตัวแรกที่เจอคือ mod_ruby แต่อันนั้นเวลาจะใช้มันใช้กับไฟล์ .rb คือเอาไฟล์มาวางเสร็จแล้วทำให้เหมือนกับ .php เลยเป็น script แล้วแสดงผลพวก print ขึ้นหน้าจอทันที มันก็เหมือนจะดีนะ แต่โปรแกรมที่เขียนด้วย ruby ส่วนใหญ่จะใช้กับ rail นี่สิ ก็เลยต้องหาใหม่ แล้วก็มีคนแนะนำผ่าน twitter มาว่าใช้ mod_rails สิ ก็ลองๆ แต่ไม่ได้หาโปรแกรมมาใส่ซักทีแล้วก็ทิ้งไปเสียนาน สำหรับ Redmine นี่คือตัวเลือกก่อนที่คิดจะทำ Control panel เพราะนอกจากจะทำโฮสท์ให้ลองเล่น ruby แล้วยังคิดที่จะทำให้เพื่อใช้เป็นที่ฝากไฟล์ หรือทำงานร่วมกันอีกด้วย โดยหลักๆ แล้วก็คือให้บริการพวก svn นั่นแหละ แต่จะมี svn อย่างเดียวก็ยังไงอยู่ เพราะจะให้เข้ามาแก้ไขไฟล์เลย ท่าทางคนทำโครงการต่างๆ คงจะส่ายหน้าหนี(อย่างน้อยก็คงเป็นเพื่อนผมหละ) [...]
ติดตั้ง DHCP
เกลิ่นคร่าวๆ DHCP เป็นการแจก IP แก่เครื่องลูกข่ายโดยอัตโนมัติ โดยที่เครื่องลูกข่ายต้องทำการเปิดการร้องขอ DHCP ด้วย ซึ่ง DHCP Server จะทำการแจก IP ให้เครื่องลูกข่ายโดย IP ที่แจกจะไม่ซ้ำกัน การทำงานจะประมาณนี้ เครื่องลูกข่ายร้องขอหาตำแหน่ง DHCP Server เพื่อขอ IP Address DHCP Server จะค้นหา IP Address ในฐานข้อมูลเพื่อจะส่ง IP ไปให้เครื่องลูกข่าย เครื่องลูกข่ายได้รับ IP Address จะส่ง ack กลับไป DHCP Server ได้รับ ack จะส่งสัญญาณอนุญาติให้ เครื่องลูกข่ายใช้ IP นั้น พร้อมบันทึก IP ขั้นตอน 1. Download dhcp ดาวโหลดที่ http://www.isc.org/sw/dhcp/ 2. แตกไฟล์ [...]