How to list the files from rpm package by rpm or yum-utils

yum_rpmหากต้องการ list รายชื่อไฟล์ของ rpm package ที่ยังไม่ได้ install หรือ install ไปแล้ว สามารถทำได้ 2 วิธีด้วยกัน คือ ใช้คำสั่ง rpm และ repoquery เรามาดูกันว่าจะใช้งานคำสั่งทั้งสองเพื่อให้แสดงรายชื่อไฟล์ของ rpm package ยังไง

สำหรับท่านที่ยังไม่มีคำสั่ง repoquery ใฟ้ติดตั้ง package ชื่อ yum-utils คำสั่งในการติดตั้งคือ

[root@Ezylinux ~]# yum install yum-utils

Read more »

[Infographic] History of Linux

History of Linux ได้เสนอเรื่องราวของ Linux ผสมกับประวัติของ GNU นิดหน่อย โดยใช้วิธีการนำเสนอแบบ Infographic เพื่อให้อ่านและเข้าใจได้ง่ายขึ้น นอกจากนี้ยังได้กล่าวถึงการเติบโตของ OS ตัวนี้ โดยเฉพาะด้าน Super computing จะเห็นได้ว่ามีการเจริญเติบโตอย่างรวดเร็ว ในปัจุบัน Top500 Super computer มีถึง 413 Super computer ที่ใช้ระบบปฏิบัตการ Linux และ ยังกล่าวถึงในปัจจุบัน Linux มีการใช้งานอะไรบ้าง
Read more »

Enable multiple SSL vhosts on a single IP with Apache

Apache with ssl certificate = httpsการเปิดใช้งาน https ที่รองรับ SSL certificate หลายใบบน port 443 ของ Apache เมื่อหลายปีก่อนดูเหมือนจะเป็นเรื่องยุ่งยาก แต่การมาของ SNI หรือ Server Name Indication ทำให้ชีวิตง่ายขึ้นเยอะมาก เพราะ SNI สามารถอนุญาตให้เรา config virtual host ให้สามารถมี SSL certificate ไม่ซ้ำกันได้บน 1 IP address + port 443 แต่การใช้งาน SNI ยังมีข้อจำกัดอยู่ คือ รองรับ web browser ได้ไม่ทั้งหมดทุก version แต่สำหรับ web browser version ใหม่ๆรองรับทั้งหมดแล้ว สามารถตรวจสอบ version ที่สามารถใช้งานได้จากด้านล่าง
Read more »

How to set a crontab to run command on the last day of every month.

crontab scheduleเป็นที่ทราบกันดีว่าใน crontab ของ linux มีแค่การกำหนด เวลา วัน เดือน ในการทำงานเท่านั้น หากว่าจะต้องการให้ทำงานในวันสุดท้ายของเดือน หรือ เสาร์แรกของเดือน จะไม่สามารถทำได้ แต่ถ้าหากรู้วิธีการเขียน script ก็สามารถใช้ script มาช่วยในการควบคุมการทำงานอีกต่อหนึ่งได้ ซึ่งในบทความนี้ผมได้นำตัวอย่าง script ที่ใช้ร่วมกับ crontab เพื่อให้สามารถกำหนดวันการทำงานได้อย่างถูกต้องตามความต้องการมากขึ้น
Read more »

How to broadcast a message to all users and direct message to some user

Broadcast a message
เมื่อ Admin ต้องการส่งข้อความไปหาทุกคนที่กำลัง login อยู่ในระบบ (text mode) ก็มีหลายทางเลือกให้ใช้งาน และในบทความนี้ ผมจะเสนอวิธีการส่งข้อความไปหา user อื่น ง่ายๆ โดยแบ่งรูปแบบการส่งออกเป็น 2 วิธี ด้วยกัน คือ การส่งข้อความแบบ broadcast message (ส่งไปทุก user ที่ login อยู่) และการส่งข้อความตรงไปยัง user ที่ต้องการ ซึ่งทั้ง 2 วิธีสามารถทำตามวิธีข้างล่างได้ดังนี้
Read more »

MySQL replication: ‘show master status’ shows ‘Empty set (0.00 sec)’

mysql logo
หลังจากได้เตรียม server สำหรับ MySQL replication ด้วยการทำให้ข้อมูลของทั้งสองเครื่องเหมือนกันเรียบร้อยแล้ว ก็มาถึงขั้นตอนการ setup replication ซึ่งขั้นตอนนี้จะต้องรันคำสั่ง “show master status” เพื่อตรวจสอบ bin-log และ position ที่เครื่อง master เพื่อนำข้อมูลที่ได้ไปใช้กับคำสั่ง CHANGE MASTER TO ที่เครื่อง slave แต่เมื่อรันคำสั่ง “show master status” ที่เครื่อง master แล้วกลับพบว่าได้ผลลัพธ์ “Empty set (0.00 sec)” มาแทนที่จะได้ข้อมูล bin-log และ position และเมื่อไปตรวจสอบที่ไฟล์ error log ของ MySQL กลับไม่มีข้อมูลอะไรเลย ต่อมาจึงลองใช้คำสั่ง “show binary logs” เพื่อตรวจสอบข้อมูลของ binary log ก็พบข้อความว่า “ERROR 1381 (HY000): You are not using binary logging” ซึ่งทำให้รู้ว่าน่าจะเกิดปัญหาจากการสร้าง binary log ไฟล์
Read more »

Install OpenVZ OS level virtualization on CentOS

OpenVZ OS level virtualization
OpenVZ คือ server virtualization solution ในระดับ OS level หรือเรียกว่า containers virtualization อีกตัวหนึ่งที่น่าสนใจ OpenVZ นิยมนำใช้กับ Virtual Private Servers (VPSs) ซึ่งแต่ละ Virtual Private Server จะเรียกว่า container และแต่ละ container จะทำหน้าที่เป็นเหมือน stand-alone server ตัวหนึ่ง ที่สามารถ reboot, root access, users, IP addresses, memory, processes, files, applications, system libraries and configuration files.

ข้อดีของ OS level virtualization มี overhead ที่น้อย ดังนั้นจึงมีประสิทธิภาพที่ดีกว่าพวก VMWare และยังสามารถทำ live migration ได้อีกด้วย แต่ก็มีข้อเสียคือรองรับได้แค่ Linux OS เท่านั้น

ขั้นตอนการ install OpenVZ บน CentOS
Read more »