Raspberry Pi จะไม่อัปเดตเวลา


12

ฉันซื้อ Raspberry Pi 3 ประมาณสองเดือนที่ผ่านมาและตั้งแต่นั้นมาเวลาที่ไม่เคยได้รับการปรับปรุง รายละเอียด:

  1. ระบบปฏิบัติการเป็นการติดตั้งใหม่ของ Raspbian Jessie (4.1.19-v7 +)
  2. การเชื่อมต่ออินเทอร์เน็ตผ่าน Wi-Fi ดั้งเดิมและไม่มีปัญหาในการสื่อสาร
  3. ไม่มีปัญหาไฟร์วอลล์เมื่อการอัปเดตเวลาทำงานได้อย่างมีเสน่ห์บนเครื่อง Windows บน LAN เดียวกัน
  4. ตั้งค่าเขตเวลาไว้ถูกต้องแล้ว

nptdateครั้งแรกที่ผมเริ่มต้นด้วย เมื่อฉันพยายามบังคับให้อัปเดต

sudo /etc/init.d/ntp stop
sudo ntpd -q -g
sudo /etc/init.d/ntp start

เทอร์มินัลค้างที่คำสั่งที่สอง ข้อความสุดท้ายใน/var/log/syslogคือ:

Listening on routing socket on fd #22 for interface updates

/etc/ntp.conf เนื้อหา:

driftfile /var/lib/ntp/ntp.drift

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 0.debian.pool.ntp.org iburst
server 1.debian.pool.ntp.org iburst
server 2.debian.pool.ntp.org iburst
server 3.debian.pool.ntp.org iburst

restrict -4 default kod notrap nomodify nopeer noquery
restrict -6 default kod notrap nomodify nopeer noquery

restrict 127.0.0.1
restrict ::1

สำหรับฉันดูเหมือนว่าntpแพคเกจมีปัญหา ฉันจะตั้งค่าการอัปเดตเวลาได้อย่างไรเนื่องจาก Raspberry ของฉันเปิดอยู่เฉพาะช่วงกลางวันและเวลาที่ล่าช้ามากในตอนกลางคืน


1
คุณใช้การกระจายแบบใด ลิงค์โบราณเหล่านี้ไม่มีส่วนเกี่ยวข้องกับ Raspbian ปัจจุบัน คุณรอหลังจากบูตนานเท่าไหร่ คุณกำลังทำอะไรเพื่อยืนยัน "เวลาจะไม่อัปเดต"
Milliways

มันเป็น Raspbian ถ้าคุณถามว่า ไม่ว่าฉันจะรอนานแค่ไหนก็ไม่อัปเดต ฉันใช้คำสั่ง "date" และดูคำสั่ง clock ที่มุม
Pygmalion

ntpdเปลี่ยนไปในบางจุดในช่วงไม่กี่ปีที่ผ่านมาเพื่อให้ผู้ใช้บังคับการเปลี่ยนแปลงได้ยากขึ้น เมื่อพิจารณาถึงจุดประสงค์ที่เรียบง่ายมันเป็นหนึ่งในแอพที่เลวร้ายที่สุดที่ออกแบบมาและป้านที่สุดตลอดกาล ใครบางคนควรเขียนพื้นฐานการใช้งานลูกค้าเท่านั้นสำหรับระบบผู้ใช้ปลายทางแบบสแตนด์อโลน ใช้เวลาไม่เกินหนึ่งวันรวมถึงการอ่าน RFC ฉันรู้สึกถึงคุณ ฉันเกลียดสิ่งนั้น (ยกเว้นโดยทั่วไปจะใช้งานได้สำหรับฉันดังนั้นฉันจึงไม่ได้ใส่ใจ ... ) โชคดี.
goldilocks

ที่กล่าวว่าฉันคิดว่าคุณสามารถเพิ่มคำอธิบายรายละเอียดเพิ่มเติมว่าเกิดอะไรขึ้น แน่นอนว่ามันจะมีจำนวนมากเมื่อไม่สามารถเชื่อมต่อกับเซิร์ฟเวอร์และสิ่งนั้นจะอยู่ใน syslog ลองดูsudo grep ntp /var/log/syslogหรือหลังจากบูท, journalctl | grep ntp.
goldilocks

@goldilocks sudo grep ntp /var/log/syslogส่งคืนbad peer from pool x.debian.pool.ntp.orgข้อผิดพลาดจำนวนมาก หลังจากรีสตาร์ทjournald | grep ntpส่งคืนbash: journald: command not foundและsudo grep ntp /var/log/syslogส่งคืนcan't find host x.debian.pool.ntp.org: name or service not knownข้อผิดพลาดจำนวนมากและno servers can be used, exiting
Pygmalion

คำตอบ:


6

คุณต้องพยายามอัปเดตเวลาผ่านดองเกิล USB Wi-Fi ถ้ามันใช้งานได้ดีให้ใช้tcpdumpและดูวิธีจัดการแพ็คเก็ตทั้งสองด้าน: ที่ Raspberry Pi 3 และ Wi-Fi AP ที่เชื่อมต่อ

Wi-Fi ภายในของ Raspberry Pi 3 นั้นใช้ในการสูญเสียแพ็กเก็ตอย่างเงียบ ๆ เท่าที่ฉันรู้

วิธี/etc/network/interfacesควรมีลักษณะดังนี้:

# Wired adapter #1
auto eth0
    iface eth0 inet static
    address 192.168.0.3
    netmask 255.255.255.0
    gateway 192.168.0.1
    dns-servers 8.8.8.8,8.8.4.4
    post-up /usr/sbin/ntpdate -4 1.2.3.4

อย่าลืมช่องว่างชั้นนำ!


ความคิดเห็นไม่ได้มีไว้สำหรับการอภิปรายเพิ่มเติม การสนทนานี้ได้รับการย้ายไปแชท
Ghanima

ผมพบว่าวิธีการแก้ปัญหาวิธีการ "ซ่อมแซม" ntpd ในกระทู้นี้: raspberrypi.org/forums/viewtopic.php?f=28&t=141454 ฉันยังไม่รู้วิธีทำให้อัตโนมัติเมื่อทำการบูท RPi3
Pygmalion

@Pygmalion ตามที่ฉันพูดก่อนหน้านี้ - ntpD= NTP Daemon - ไม่จำเป็นสำหรับการตั้งค่าเวลาโฮสต์อย่างง่าย ... มันเป็นแม่บ้านสำหรับการกระจายเวลาผ่านเครือข่ายเช่นถ้าคุณมีหลายโหนดคุณต้องใช้อย่างแน่นอน แต่สำหรับการตั้งค่าเวลาจุดสิ้นสุดเดียวทำให้ntpdateเครื่องมือ มันถูกแยกออกมาแม้กระทั่งในต้นไม้ต้นกำเนิดของ ntp เอง
Alexey Vesnin


9

ฉันลองหลายวิธีด้วย ntp, chrony ... แก้ไขด้วยวิธีต่อไปนี้ในที่สุด

ดึงข้อมูลวันที่จากเว็บไซต์ที่มีชื่อเสียงเช่น google เพื่อตั้งเวลาเครื่องของคุณในการบู๊ตทุกครั้ง

  1. เปิดไฟล์ rc.local

    sudo nano /etc/rc.local

  2. เพิ่มบรรทัดต่อไปนี้ลงในไฟล์ rc.local

    sudo date -s "$(wget -qSO- --max-redirect=0 www.google.com 2>&1 | grep Date: | cut -d' ' -f5-8)Z"

  3. รีบูต Rpi

    sudo reboot


ฉันชอบวิธีแก้ปัญหา มันใช้งานได้ แต่ฉันจะมีความสุขกับโซลูชัน nTP ฉันลองพวกเขา แต่ฉันไม่สามารถผ่านมันไปได้
Varad AG

ฉันสามารถเข้าใจความสิ้นคิดนี้ - นี่คือสิ่งที่ฉันทำในบางครั้ง (วันที่จากส่วนหัว HTTP) แต่ตอนนี้ฉันอยู่ในเครือข่ายปิดที่ไม่มีการเข้าถึงอินเทอร์เน็ตและไม่มีเซิร์ฟเวอร์ HTTP เพียงเซิร์ฟเวอร์ NTP
Tomasz Gandor

4

หากคุณตั้งค่าโซนเวลาในraspi-configRaspberry Pi จะอัปเดตเวลาในการบูตโดยอัตโนมัติหากเชื่อมต่อกับอินเทอร์เน็ต

  1. sudo raspi-config
  2. เลือก Internationalisation Options
  3. เลือก I2 Change Timezone
  4. เลือกพื้นที่ทางภูมิศาสตร์ของคุณ
  5. เลือกเมืองที่ใกล้ที่สุด
  6. เลือก Finish
  7. เลือกที่Yesจะรีบูตทันที

แน่นอนฉันตั้งเขตเวลาในวันแรก
Pygmalion

1
ฉันยังตั้งเขตเวลาในวันแรก แต่ Pi ของฉันเพิ่งหยุดอัปเดตเวลาในการรีบูตเหมือนกับปัญหาที่คุณมี ฉันทำงานใหม่raspi-configเมื่อวานนี้และเวลาได้รับการอัปเดตอย่างถูกต้องในทุก ๆ การรีบูตตั้งแต่แม้ว่าฉันจะไม่ได้เสียบปลั๊กไฟสักครู่ ฉันขอแนะนำให้คุณลองดู? แจ้งให้เราทราบว่าคุณจะไปได้อย่างไร ...
mwd27

ฉันขอโทษ. ฉันทำตามที่คุณแนะนำ แต่มันล้มเหลว
Pygmalion

โอ้นั่นเป็นความอัปยศ ฉันจะคิดต่อไป ...
mwd27

3

คำสั่งต่อไปนี้จะใช้งานได้อย่างแน่นอน

sudo date -s"Sep 11 12:50"

1
ขอบคุณสำหรับคำตอบ. ฉันคิดว่าคำถามเกี่ยวกับการอัปเดตอัตโนมัติโดยใช้ NTP และคำตอบของคุณน่าจะเป็นการตั้งค่านาฬิกาแบบครั้งเดียว
Bex


1

ในเมนูแอปพลิเคชัน / การกำหนดค่าตามความชอบ / การกำหนดค่า Raspberry Pi ฉันไปที่แท็บการแปลภาษาและค่าที่เลือกสำหรับ Set Locale, Set Timezone และ Set WiFi Country

คลิกตกลงและเวลาถูกต้องแล้ว


1

สำหรับฉันฉันต้องรอสักหน่อยด้วยเหตุผลบางอย่างมันไม่ได้ตั้งเวลาที่ถูกต้องทันที นี่คือหลังจากที่ฉันตั้งค่าโซนเวลาที่ถูกต้องมีการเปิดใช้งานอินเทอร์เน็ตและรีบูต


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