จะตั้ง Debian ให้อัพเดทเวลาและวันที่อัตโนมัติได้อย่างไร?


17

ฉันมีคอมพิวเตอร์เครื่องเก่าและ BIOS นับเวลาช้ากว่าจริง;)

ดังนั้นฉันจะตั้งค่าระบบปฏิบัติการของฉันเพื่ออัปเดตเวลาโดยอัตโนมัติโดยใช้อินเทอร์เน็ตได้อย่างไร

ถ้ามันอัพเดทเวลาระหว่างการบูทมันก็เพียงพอแล้ว

คำตอบ:


12

คุณสามารถตั้งเวลาระหว่างการบูตระบบจริง ๆ และจากDebian Documentationพวกเขายังระบุว่าจะใช้กับฮาร์ดแวร์ที่ไม่ได้ติดตามเวลาอย่างถูกต้อง ฉันแนะนำให้ใช้ NTP คุณสามารถตั้งค่าเพื่อเชื่อมต่อกับเซิร์ฟเวอร์ NTP ก่อนอื่นให้ติดตั้ง NTP โดยใช้

$ sudo apt-get install ntp

เมื่อติดตั้งแล้วให้ไปที่ /etc/ntp.conf ซึ่งคุณสามารถแก้ไขได้โดยใช้การแก้ไขข้อความที่คุณชื่นชอบ พูด gedit หรือ nano

$ sudo nano /etc/ntp.conf

ฉันไม่แน่ใจว่าจำเป็นต้องใช้ sudo หรือไม่ แต่คุณสามารถใช้งานได้

คุณจำเป็นต้องรู้เซิร์ฟเวอร์ NTP เพื่อตั้งค่านี้ แก้ไขไฟล์ของคุณให้เป็นดังนี้:

 logfile /var/log/xntpd
 driftfile /var/lib/ntp/ntp.drift
 statsdir /var/log/ntpstats/

 statistics loopstats peerstats clockstats
 filegen loopstats file loopstats type day enable
 filegen peerstats file peerstats type day enable
 filegen clockstats file clockstats type day enable

 server ntp.somedomain.something
 server ntp.something.else

แทนที่ somedomain.something และ something.else ด้วยเซิร์ฟเวอร์ NTP คุณสามารถค้นหา hfrom บางบ้านเซิร์ฟเวอร์ NTP


18

ถ้าคุณมีsystemdในรุ่นที่สูงกว่า213(ตรวจสอบ: systemd --version) คุณไม่จำเป็นต้องติดตั้งntpแพคเกจที่จะประสานเวลาของระบบ

systemdจัดเตรียมsystemd-timesyncddaemon ซึ่งใช้ไคลเอ็นต์SNTP (Simple NTP)

ในการเริ่มและเปิดใช้งานการซิงโครไนซ์ SNTP:

timedatectl set-ntp true

หากต้องการแสดงการตั้งค่าปัจจุบันของนาฬิการะบบและRTC :

timedatectl status

การกำหนดค่าของsystemd-timesyncddaemon อยู่ใน/etc/systemd/timesyncd.confไฟล์ คุณสามารถให้บริการเซิร์ฟเวอร์ NTP ของคุณได้ที่นั่น โดยค่าเริ่มต้นเซิร์ฟเวอร์ทั้งหมดจะได้รับการใส่ความคิดเห็นและเซิร์ฟเวอร์ NTP จะได้รับจากsystemd-networkd.service(8)การกำหนดค่าหรือผ่าน DHCP

หากคุณติดตั้งWindows ที่ควบคู่ไปกับลินุกซ์ , คุณอาจต่อสู้กับอัลบูตเวลาของระบบปัญหา เหตุผลง่าย: Windows เก็บนาฬิกาฮาร์ดแวร์ในเวลาท้องถิ่นและ Linux ในเวลา UTC ( timedatectl set-local-rtc 1อาจเป็นประโยชน์ แต่ไม่แนะนำให้คุณเปลี่ยน การตั้งค่าเวลาWindowsเพื่อบังคับให้รักษานาฬิกาฮาร์ดแวร์ใน UTC)


2
คำตอบที่ยอดเยี่ยมสำหรับผู้ที่ใช้ Debian 8 ขอบคุณ!
Eric Sebasta

1
ใช้งานได้ดีกับ Debian 10 เช่นกัน!
genpfault

3

ติดตั้ง ntp และทำให้มันรันบน runlevels 2,3,5 จากนั้นจะดึงวันที่และเวลาจากแหล่งที่รู้จักกันดีและจะปรับระบบของคุณทีละน้อย


Ntp น่าจะเป็นสิ่งที่ฉันกำลังค้นหา แต่ฉันจะตั้งค่า runlevels 2,3,5 โดยไม่มีเครื่องมือ gui ได้อย่างไร
kravemir

3
sudo apt-get install ntp
sudo systemctl restart ntp
sudo systemctl enable ntp 

แค่นั้นแหละ. เพียงวิ่ง$ dateไปดูว่ามันใช้งานได้หรือเปล่า

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.