สมมติมี network card 2 ใบคือ eth0 และ eth1
และเราต้องการสร้าง Trunk ที่มี IP 172.16.0.21 Netmask 255.255.255.0 Gateway 172.16.0.1
ให้แก้ไข file /etc/sysconfig/network-scripts/ifcfg-eth0 ให้มีข้อมูลดังนี้
DEVICE=eth0
ONBOOT=yes
BOOTPROTO=none
USERCTL=no
MASTER=bond0
SLAVE=yes
และทำเช่นเดียวกันกับ ifcfg-eth1
เปลี่ยนแค่
DEVICE=eth1
จากนั้นให้สร้าง file /etc/sysconfig/network-scripts/ifcfg-bond0 โดยมีข้อมูลดังนี้
DEVICE=bond0
IPADDR=172.16.0.21
NETMASK=255.255.255.0
NETWORK=172.16.0.0
BROADCAST=172.16.0.255
GATEWAY=172.16.0.1
ONBOOT=yes
BOOTPROTO=none
USERCTL=no
หากเราต้องการให้คำสั่งทำงานใน background เราสามารถสั่งด้วยการเติม & ต่อท้ายคำสั่ง เข่น
commanda &
แต่การสั่งแบบนี้ ถ้าเรา logout commanda จะหยุดทำงานทันทีเพราะได้รับ hangup signal
ถ้าเราต้องการให้รันไปเรื่อย ๆ ไม่ต้องหยุดเมื่อ logout เราจะต้องใช้คำสั่ง nohup ช่วย ดังนี้
nohup commanda &
โดยการสั่ง nohup คือการระบุไม่ให้ process รับ signal hangup เฉย ๆ ไม่เกี่ยวกับการทำงาน foreground หรือ background
ดังนั้นถ้าเราต้องการให้ run ใน background และ logout ก็ยังทำงานต่อ
เราจะต้องใส่ทั้ง nohup ด้านหน้า และ & ที่ด้านหลังครับ
วันนี้ได้เข้าไปลง GlusterFS ที่ server ที่ฝากคนอื่นลง CentOS ไว้แล้วพบว่าลงไม่ได้เนื่องจากพบ error นี้
err: cannot create %sourcedir /usr/src/redhat/SOURCES
เดาว่าตอนที่ลงไม่ได้เลือก Development ไว้ และผมก็ยังไม่เคยลง package พวกนี้ทีหลัง
เพราะปรกติจะเลือกตั้งแต่แรก เลยต้องหากันหน่อยว่า yum มันทำยังไง แล้วก็พบวิธีนี้
yum groupinstall 'Development Tools'
เท่านั้นแหละลง GlusterFS ได้แล้ว เรียบร้อย ^_^
Credit: http://www.cyberciti.biz/faq/centos-linux-install-gcc-c-c-compiler/
หลังจากสร้าง iSCSI target ที่ Storage Server แล้ว ก็ถึงคราวของ iSCSI Initiator ที่ Client บ้าง
วันนี้เกิดอยากจะดูว่า Library ที่ใช้อยู่นั้น Generate SQL อย่างไร
และเนื่องจากถ้าจะไปแกะ Code ดูคงจะเสียเวลามากแน่ ๆ จึงเกิดคำถามว่า
"เราจะดูว่า Application ของเราส่ง SQL เข้าไปที่ MySQL ว่าอะไรบ้าง ได้ไหม และทำอย่างไร"
ในกรณีที่ filename เป็นแบบ 8.3 (ดั้งเดิม -- ยังมีใครใช้อยู่มั้ยเนี่ย)
{syntaxhighlighter brush: plain; gutter: false}
mkisofs -o 9660.iso folder_with_standard_eight_point_three_filename
{/syntaxhighlighter}
แต่ถ้ามี filename ที่เกินจาก 8.3 (เราคงต้องใช้แบบนี้แหล่ะ) ต้องใส่ -J ด้วย
{syntaxhighlighter brush: plain; gutter: false}
mkisofs -o longfilename.iso -J folder_with_long_filename
{/syntaxhighlighter}
สามารถตั้งชื่อ Volume ได้โดยใช้ -V
{syntaxhighlighter brush: plain; gutter: false}
mkisofs -V title -o longfilename.iso -J folder_with_long_filename
{/syntaxhighlighter}
อยากได้มานาน เพิ่งรู้ว่ามีแบบนี้ด้วย Terminal แบบ Split Screen ได้
Credit
http://arstechnica.com/open-source/news/2010/07/terminator-for-gnome-let...
วันนี้เฮี้ยนเกิดอยากเขียนโปรแกรมใน terminal ดูบ้าง จึงลองใช้ vim ดู และผมก็เป็นเช่นเดียวกับ Programmer ทุกคนนั่นคือ ต้องการการย่อหน้า code แบบอัตโนมัติ (Autoindent -- Automatic Indentation) และนอกจากนั้นผมยังต้องการให้แทนที่ tab ด้วย space เนื่องจากไม่ต้องการอ่าน code เด้งไปเด้งมาในกรณีที่ Editor ที่ใช้นั้น ตั้ง tab ไม่เหมือนกัน
และเนื่องจากไม่ได้ใช้กันเป็นประจำ ก็ลืมวิธีกันบ้าง ก็เลยต้องพึ่งพี่กูตามระเบียบ ซึ่งพี่กูก็ไม่ทำให้ผิดหวัง ได้คำตอบดังนี้
สร้าง file .vimrc ไว้ใน home ของตนเอง โดยให้มีเนื้อหาดังนี้
ในกรณีที่ Android Phone ต่ออยู่กับ Network หลัง Firewall ให้เปิด Port 5228 ทั้ง tcp และ udp ก็จะสามารถเข้า Android Market ได้
เนื่องด้วยผมไม่ชอบใช้ touchpad อาจจะเพราะติดใช้ TrackPoint และไม่อยากให้ลายนิ้วมือหายเนื่องจากการถู ๆ ๆ
หลังจากผมลง Ubuntu 10.04 Lucid Lynx บน ThinkPad T410 เรียบร้อย ผมจึงหาทางปิด touchpad เพื่อความสะดวกในการใช้งาน
(ก่อนหน้านี้ใช้ ThinkPad X200si ซึ่งไม่มี touchpad เลยไม่ต้องปิด ^_^)