ซึ่งตาม พรบ จริงๆ แล้วเราต้องตั้งนาฬิกาให้เที่ยงตรงโดยเพิ้ยนได้ในระดับ millisecond ซึ่งทำเองเป็นไปได้ยากครับ แต่อย่างไรก็ตาม เราสามารถกำหนด Linux ที่ Zimbra Server ทำงานอยู่ ให้ปรับแต่งเวลาโดยเทียบกับเวลากับ time server ที่มีอยู่มากมายใน internet ได้ครับ ซึ่งวิธีนี้ เวลาจะผิดพลาดน้อยมาก และ server ส่วนใหญ่ที่ต้องเกี่ยวข้องกับ พรบ. คอม(เจ้าปัญหา)นี้ ก็ใช้วิธีนี้เช่นกันครับ
กระบวนการที่ทำการ synchronize หรือตั้งเวลาในระบบกับเครื่องคอมพิวเตอร์อื่นๆอยู่ ที่ว่านี้ ใช้กระบวนการที่เรียกว่า NTP(Network Time Protocol) จะทำงานโดยใช้โปรแกรมที่ชื่อว่า ntpd (Network Time Protocol) ซึ่งเราต้องติดตั้งกันก่อนครับ บางระบบอาจจะติดตั้งไปเรียบร้อยแล้ว เราสามารถตรวจสอบได้โดยใช้คำสั่งตามตัวอย่างนี้ครับ
ในกรณีที่ระบบเรายังไม่มี ntpd เราติดตั้งได้โดย Login หรือ su เป็น root (ใช้คำสั่ง su –) และใช้คำสั่ง
yum install ntpdการตรวจสอบเบื้องต้น
ก่อนที่จะพุดถึงการติดตั้ง เราต้องตรวจสอบให้แน่ใจก่อนว่า ระบบ Linux ของเราอยู่ในสภาพที่พร้อมจะปรับเวลาให้ตรงกับเวลามาตรฐาน ดังนี้ครับ
1) ตรวจสอบ firewall
ntpd ทำงานผ่าน UDP port 123 ในกรณีที่ Linux Server เราอยู่หลัง firewall ต้องเปิด UDP port 123 ให้เครื่อง Linux ของเรารับส่งข้อมูลกับ ntp server ภายนอกด้วย วิธีการตรวจสอบง่ายๆ ก็คือ ใช้คำสั่ง ntpdate (ซึ่งต้องลง package ntpdate) ตามตัวอย่างนี้ครับ ซึ่งถ้าคุยได้ไม่ติดปัญหา คำสั่งนี้จะแสดงผลออกมาตามตัวอย่างนี้
จากตัวอย่างนี้ เป็นการทดลองส่งข้อมูล ไปคุยกับ time server ที่ชื่อ time1.nimt.or.th
2) ตรวจสอบ timezone
ระบบที่จะปรับเวลาให้ตรงกับเวลามาตรฐาน จะต้องมีการตั้ง timezone ให้ถูกต้อง โดยเราดูได้จาก คำสั่ง date ตามตัวอย่างนี้ครับ
ค่า timezone จะอยู่หลังเวลา ตามตัวอย่างนี้คือ ICT ซึ่งย่อมาจาก Indo China Time ซึ่งถูกต้องแล้วครับสำหรับ Time zone ของเมืองไทย
ถ้าไม่ถูกต้อง ต้องปรับให้ถูกก่อนนะครับ บน CentOS ใช้คำสั่ง system-date-config
การตั้งค่า ntpd
1) ที่ไฟล์ /etc/ntp.conf แก้ไขบรรทัด
server time_server_hostname
โดยเปลียนชื่อ time_server_hostname เป็นชื่อเครื่องที่สามารถเทียบเวลามาตรฐานได้ ที่นิยมกัน จะเป็น
clock.nectec.or.th
time.navy.mi.th
time1.nimt.or.th
time2.nimt.or.th
time3.nimt.or.th
ซึ่ง บรรทัด server นี้ เราสามารถใส่หลายๆ บรรทัดได้ครับ ระบบจะติดต่อกับ time server เรียงไป ตั้งแต่ตัวแรก ถ้าติดต่อไม่ได้ ระบบจะติดต่อ time server ตัวถัดไปแทน ตามลำดับ ตัวอย่างตามนี้ครับ
หมายเหตุ
- ไฟล์ /etc/ntp.conf ใช้ตัวอักษร "#" สำหรับ comment
- บรรทัดอื่นๆ ในไฟล์ /etc/ntp.conf ไม่จำเป็นต้องแก้ไขครับ ปล่อยไว้เหมือนเดิม
2) เรียก ntpd ขึ้นมาใช้งาน โดยใช้คำสั่ง “service ntpd start” ตามตัวอย่างนี้ครับ
3) กำหนดให้ ntpd ทำงานทุกครั้งที่มีการเปิดเครื่องโดยใช้คำสั่ง "chkconfig ntpd add” และ “chkconfig –level 2345 ntpd on” ตามตัวอย่างนี้
คำสั่งสุดท้าย"chkconfig –list ntpd” เป็นการตรวจสอบว่า ntpd จะถูกเรียกขึ้นมาทำงานโดยอัตโนมัติหรือไม่ซึ่งถ้าหลัง 2: 3: 4: 5: เป็น on ถือว่าถูกต้องแล้วครับ
การทำงานของ ntpd
ntpd จะติดต่อกับtime server เป็นระยะๆและจะคอยปรับเวลาที่อาจจะผิดเพี้ยนไปบนเครื่อง server ของเราให้ตรงกับ time server ที่อ้างอิงอยู่ ซึ่งถ้าเวลาผิดเพี้ยนไปมาก ntpd จะค่อยๆปรับเวลาให้เข้าใกล้เวลามาตรฐาน ดังนี้ถ้า ntpd ทำงานอยู่ เราอาจจะไม่เห็นเวลาถูกปรับให้ตรงกับเวลามาตรฐานทันทีนะครับ
ลองติดตั้งใช้งานดูนะครับ มีปัญหาหรือคำถามตรงไหน ติดต่อผม ผ่านทาง ThaiZimbra ได้เลยครับ
ไม่มีความคิดเห็น:
แสดงความคิดเห็น