Milik saya sudah melakukan itu di luar kotak. Disto apa yang Anda gunakan?
Gerben
Raspbian Wheezy
Alessandro Da Rugna
bekerja apa adanya, entah bagaimana
lenik
1
@Thorb Pi terhubung dengan kabel ethernet / dhcp. Ini sama sekali tidak mendapatkan tanggal yang valid setelah booting, butuh waktu (10 hingga 45 menit)
Alessandro Da Rugna
1
Ini akan melakukannya secara otomatis, setelah beberapa menit. Pastikan Anda telah menyetelnya untuk menggunakan Jam Master di National Bureau of Standards, time.nist.gov seperti yang dijelaskan di sini: raspberrypi.stackexchange.com/questions/68811/…
SDsolar
Jawaban:
40
Lakukan apt-get install ntpdate.
ntpdateakan berjalan ketika antarmuka Ethernet ditampilkan, dan mengatur waktu dari server ntp (lihat /etc/default/ntpdate).
Jika ntpdsedang berjalan, ntpdate tidak akan melakukan apa-apa, namun ntpdateakan berjalan sebelum ntpdsaat bootup - jadi ini akan berfungsi untuk mengatur waktu saat booting selama ada koneksi Ethernet.
Ini benar-benar solusi untuk masalah saya, tetapi saya menemukan ini bersifat sementara sampai saya reboot. Akhirnya saya menemukan kesalahan dalam shutdown yang tidak dapat memperbarui jam karena jam jam memiliki tanggal masa depan (tidak tahu bagaimana itu terjadi). Tetapi solusinya adalah kekuatan pembaruan jam. Itu memaksa pembaruan ke jam perangkat keras palsu dan kemudian pada saat boot waktu setidaknya sudah dekat dengan saat ini sehingga ntp dapat melakukan pekerjaannya secara normal.
Piwaf
34
Setelah mencari-cari, metode ini berhasil untuk saya. Seperti yang Anda tahu, Raspberry Pi 3 memiliki NTP dinonaktifkan secara default. Jadi dengan hanya mengetik ini, dukungan NTP akan diaktifkan:
sudo timedatectl set-ntp True
Periksa hasil dengan timedatectl status
Dalam hal peringatan, Anda mungkin harus lari sudo timedatectl set-local-rtc truejuga.
Terima kasih, ini akhirnya membantu saya, dan tampaknya menjadi cara yang tepat, terlepas dari jawaban sebelumnya.
CharlieS
1
Itu jawaban terbaik, banyak membantu saya. Anda dapat menggunakan 'sudo' untuk menghindari mengetik kata sandi Anda (berguna untuk skrip yang menjalankannya). Apa tujuan dari perintah detik? set-local-rtc
Arad
12
Jika Anda mengatur Zona Waktu di raspi-configRaspberry Pi akan secara otomatis memperbarui waktu saat boot, jika terhubung ke internet.
ntpd memancarkan paket IP / UDP dengan bidang ToS diatur ke 0xc0. Jadi itu sangat mirip dengan masalah lain yang saya (dan banyak lainnya) miliki dengan Raspberry Pi3 ketika dioperasikan melalui antarmuka internal Wi-Fi.
Rasberry Pi anak saya tidak akan memperbarui waktu di luar kotak dan setelah mencoba semua saran di atas saya bisa mendapatkannya untuk memperbarui secara manual tetapi tidak secara otomatis. Akhirnya setelah mencari di tempat lain juga tanpa keberhasilan, saya menemukan bahwa file ntp.conf yang datang dengan Rasberry Pi memiliki baris berikut sebagai berikut:
#restrict 127.0.0.1
#restrict ::1
Saya menggunakan
sudo nano /etc/ntp.conf
di terminal untuk mengedit file ntp conf sekarang menjadi:
# Local users may interrogate the ntp server more closely.
restrict 127.0.0.1
restrict ::1
Itu memecahkan masalah bagi kami. Ini memperbarui dengan WiFi dan kabel ethernet. Saya tidak tahu apakah itu akan diperbarui dengan WiFi tanpa perubahan ke rc.local yang disarankan di atas, karena pada saat saya menemukan solusi di atas saya sudah membuat perubahan itu dan saya belum membatalkannya.
Saya menemukan timedatectlaplikasi untuk membantu saya ketika saya mengalami masalah serupa. Itu diinstal secara default dan '--help' memberikan gambaran yang cukup bagus dan sederhana tentang cara menggunakan alat ini.
Catatan: pastikan zona waktu Anda diatur dengan benar, yang dapat dilakukan alat ini juga.
Inilah pendekatan yang akhirnya saya ambil. Banyak dari jawaban ini tampaknya menunjukkan hal-hal yang tidak cocok ketika saya melihat sistem Raspian saya:
Saya tidak memiliki apa pun yang muncul di log yang menunjukkan bahwa timedatectlsedang melakukan sesuatu, atau yang ntpsedang disinkronkan pada status NIC, atau NTPD bahkan diinstal / dikonfigurasi.
Pada akhirnya saya hanya menambahkan ini ke /etc/rc.local:
$ cat /etc/rc.local
logger "Beginning force syncing NTP..."
service ntp stop
ntpd -gq
service ntp start
logger "Finished force syncing NTP..."
Dan diinstal ntp:
$ sudo apt-get install ntp
Yang menghasilkan ini dalam /var/log/syslog:
Aug 5 09:10:20 pi-hole ntp[526]: Starting NTP server: ntpd.
Aug 5 09:10:20 pi-hole ntpd[555]: proto: precision = 1.458 usec (-19)
Aug 5 09:10:20 pi-hole ntpd[555]: Listen and drop on 0 v6wildcard [::]:123
Aug 5 09:10:20 pi-hole ntpd[555]: Listen and drop on 1 v4wildcard 0.0.0.0:123
Aug 5 09:10:20 pi-hole ntpd[555]: Listen normally on 2 lo 127.0.0.1:123
Aug 5 09:10:20 pi-hole ntpd[555]: Listen normally on 3 eth0 192.168.1.85:123
Aug 5 09:10:20 pi-hole ntpd[555]: Listen normally on 4 lo [::1]:123
Aug 5 09:10:20 pi-hole ntpd[555]: Listen normally on 5 eth0 [fe80::f5ea:7663:4ec:784d%2]:123
Aug 5 09:10:20 pi-hole ntpd[555]: Listening on routing socket on fd #22 for interface updates
Aug 5 09:10:21 pi-hole ntpd[555]: ntpd exiting on signal 15 (Terminated)
Aug 5 09:10:21 pi-hole ntp[661]: Stopping NTP server: ntpd.
Aug 5 09:10:21 pi-hole ntpd[674]: ntpd [email protected] Sat Mar 10 18:03:33 UTC 2018 (1): Starting
Aug 5 09:10:21 pi-hole ntpd[674]: Command line: ntpd -gq
Aug 5 09:10:21 pi-hole ntpd[674]: proto: precision = 0.625 usec (-21)
Aug 5 09:10:21 pi-hole ntpd[674]: Listen and drop on 0 v6wildcard [::]:123
Aug 5 09:10:21 pi-hole ntpd[674]: Listen and drop on 1 v4wildcard 0.0.0.0:123
Aug 5 09:10:21 pi-hole ntpd[674]: Listen normally on 2 lo 127.0.0.1:123
Aug 5 09:10:21 pi-hole ntpd[674]: Listen normally on 3 eth0 192.168.1.85:123
Aug 5 09:10:21 pi-hole ntpd[674]: Listen normally on 4 lo [::1]:123
Aug 5 09:10:21 pi-hole ntpd[674]: Listen normally on 5 eth0 [fe80::f5ea:7663:4ec:784d%2]:123
Aug 5 09:10:21 pi-hole ntpd[674]: Listening on routing socket on fd #22 for interface updates
Aug 5 09:10:34 pi-hole ntpd[674]: Soliciting pool server 198.98.57.16
Aug 5 09:10:35 pi-hole ntpd[674]: Soliciting pool server 74.82.59.149
Aug 5 09:10:36 pi-hole ntpd[674]: Soliciting pool server 23.131.160.7
Aug 5 09:10:36 pi-hole ntpd[674]: Soliciting pool server 52.37.26.163
Aug 5 09:10:36 pi-hole ntpd[674]: Soliciting pool server 204.2.134.163
Aug 5 09:10:36 pi-hole ntpd[674]: Soliciting pool server 96.126.100.203
Aug 5 09:10:36 pi-hole ntpd[674]: Soliciting pool server 199.223.248.101
Aug 5 09:10:36 pi-hole ntpd[674]: Soliciting pool server 66.228.42.59
Aug 5 09:10:36 pi-hole ntpd[674]: Soliciting pool server 208.75.89.4
Aug 5 09:10:37 pi-hole ntpd[674]: Soliciting pool server 204.2.134.164
Aug 5 09:10:37 pi-hole ntpd[674]: Soliciting pool server 104.236.116.147
Aug 5 09:10:38 pi-hole ntpd[674]: Soliciting pool server 204.9.54.119
Aug 5 09:10:48 pi-hole ntpd[674]: ntpd: time set +6.769186 s
Aug 5 09:10:49 pi-hole ntpd[853]: ntpd [email protected] Sat Mar 10 18:03:33 UTC 2018 (1): Starting
Aug 5 09:10:49 pi-hole ntpd[853]: Command line: /usr/sbin/ntpd -p /var/run/ntpd.pid -g -u 111:114
Aug 5 09:10:49 pi-hole ntp[844]: Starting NTP server: ntpd.
Aug 5 09:10:49 pi-hole ntpd[856]: proto: precision = 0.625 usec (-21)
Aug 5 09:10:49 pi-hole ntpd[856]: Listen and drop on 0 v6wildcard [::]:123
Aug 5 09:10:49 pi-hole ntpd[856]: Listen and drop on 1 v4wildcard 0.0.0.0:123
Aug 5 09:10:49 pi-hole ntpd[856]: Listen normally on 2 lo 127.0.0.1:123
Aug 5 09:10:49 pi-hole ntpd[856]: Listen normally on 3 eth0 192.168.1.85:123
Aug 5 09:10:49 pi-hole ntpd[856]: Listen normally on 4 lo [::1]:123
Aug 5 09:10:49 pi-hole ntpd[856]: Listen normally on 5 eth0 [fe80::f5ea:7663:4ec:784d%2]:123
Aug 5 09:10:49 pi-hole ntpd[856]: Listening on routing socket on fd #22 for interface updates
Aug 5 09:10:49 pi-hole root: Finished force syncing NTP...
Tidak bekerja pada raspbian minimal: Failed to start ntp.service: Unit ntp.service not found.Dan ntpd juga tidak ada. Pi pasti akhirnya mendapatkan waktu. (Saya melihat ini karena ikal HTTPS saya gagal tanpa -k ketika dijalankan sebelum itu)
Steven Lu
@StevenLu - Saya akan memperbarui A'er untuk memasukkan instalasi ntp juga.
slm
@StevenLu -apt-get install ntp
slm
1
Anda tidak perlu menggunakan ntp untuk menyelesaikan masalah. Ada skrip yang membaca tanggal dari server dan Anda hanya perlu mengatur tanggal untuk menjadi hasil skrip tersebut (Raspberry Pi Anda harus terhubung ke internet). Kemudian, Anda perlu menjalankan perintah itu saat startup.
Jawaban:
Lakukan
apt-get install ntpdate
.ntpdate
akan berjalan ketika antarmuka Ethernet ditampilkan, dan mengatur waktu dari server ntp (lihat/etc/default/ntpdate
).Jika
ntpd
sedang berjalan, ntpdate tidak akan melakukan apa-apa, namunntpdate
akan berjalan sebelumntpd
saat bootup - jadi ini akan berfungsi untuk mengatur waktu saat booting selama ada koneksi Ethernet.sumber
Linux raspberrypi 4.14.30-v7+ #1102 SMP Mon Mar 26 16:45:49 BST 2018 armv7l GNU/Linux
tidak memilikinya juga.Jika jam Anda mati, Anda mungkin perlu memaksa ntp untuk menyinkronkan dengan melakukan:
sumber
Setelah mencari-cari, metode ini berhasil untuk saya. Seperti yang Anda tahu, Raspberry Pi 3 memiliki NTP dinonaktifkan secara default. Jadi dengan hanya mengetik ini, dukungan NTP akan diaktifkan:
Periksa hasil dengan
timedatectl status
Dalam hal peringatan, Anda mungkin harus lari
sudo timedatectl set-local-rtc true
juga.sumber
Jika Anda mengatur Zona Waktu di
raspi-config
Raspberry Pi akan secara otomatis memperbarui waktu saat boot, jika terhubung ke internet.sudo raspi-config
Internationalisation Options
I2 Change Timezone
Finish
Yes
untuk reboot sekarangsumber
I2 Change Timezone
tidak ada lagiLihat posting forum Waktu tidak disinkronkan pada Pi 3 dan dengan dongle resmi .
ntpd memancarkan paket IP / UDP dengan bidang ToS diatur ke 0xc0. Jadi itu sangat mirip dengan masalah lain yang saya (dan banyak lainnya) miliki dengan Raspberry Pi3 ketika dioperasikan melalui antarmuka internal Wi-Fi.
Sebagai solusinya, tambahkan perintah
ke file
sebelum garis 0 keluar. Selanjutnya, reboot dan periksa.
sumber
Seharusnya sudah memperbarui waktu. Server NTPD harus dimulai tepat setelah file swap dan sebelum SSHD.
Periksa file /etc/ntp.conf Anda untuk memastikannya dikonfigurasi.
Seharusnya daftar setidaknya satu server. Saya menggunakan time.nrc.ca untuk server saya.
Halaman manual untuk ntp.conf ada di sini: http://linux.die.net/man/5/ntp.conf
sumber
Rasberry Pi anak saya tidak akan memperbarui waktu di luar kotak dan setelah mencoba semua saran di atas saya bisa mendapatkannya untuk memperbarui secara manual tetapi tidak secara otomatis. Akhirnya setelah mencari di tempat lain juga tanpa keberhasilan, saya menemukan bahwa file ntp.conf yang datang dengan Rasberry Pi memiliki baris berikut sebagai berikut:
Saya menggunakan
di terminal untuk mengedit file ntp conf sekarang menjadi:
Itu memecahkan masalah bagi kami. Ini memperbarui dengan WiFi dan kabel ethernet. Saya tidak tahu apakah itu akan diperbarui dengan WiFi tanpa perubahan ke rc.local yang disarankan di atas, karena pada saat saya menemukan solusi di atas saya sudah membuat perubahan itu dan saya belum membatalkannya.
sumber
Saya menemukan
timedatectl
aplikasi untuk membantu saya ketika saya mengalami masalah serupa. Itu diinstal secara default dan '--help' memberikan gambaran yang cukup bagus dan sederhana tentang cara menggunakan alat ini.Catatan: pastikan zona waktu Anda diatur dengan benar, yang dapat dilakukan alat ini juga.
sumber
Inilah pendekatan yang akhirnya saya ambil. Banyak dari jawaban ini tampaknya menunjukkan hal-hal yang tidak cocok ketika saya melihat sistem Raspian saya:
Saya tidak memiliki apa pun yang muncul di log yang menunjukkan bahwa
timedatectl
sedang melakukan sesuatu, atau yangntp
sedang disinkronkan pada status NIC, atau NTPD bahkan diinstal / dikonfigurasi.Pada akhirnya saya hanya menambahkan ini ke
/etc/rc.local
:Dan diinstal
ntp
:Yang menghasilkan ini dalam
/var/log/syslog
:sumber
Failed to start ntp.service: Unit ntp.service not found.
Dan ntpd juga tidak ada. Pi pasti akhirnya mendapatkan waktu. (Saya melihat ini karena ikal HTTPS saya gagal tanpa -k ketika dijalankan sebelum itu)apt-get install ntp
Anda tidak perlu menggunakan ntp untuk menyelesaikan masalah. Ada skrip yang membaca tanggal dari server dan Anda hanya perlu mengatur tanggal untuk menjadi hasil skrip tersebut (Raspberry Pi Anda harus terhubung ke internet). Kemudian, Anda perlu menjalankan perintah itu saat startup.
Langkah1: Ambil tanggal dari server.
Langkah2: Jalankan perintah saat startup dengan menambahkannya ke file
/etc/rc.local
(Bekerja pada Ubuntu 16.04).KREDIT:
1- https://askubuntu.com/a/655528/572294
2- https://askubuntu.com/a/1199/572294
sumber
Saya menggunakan yang berikut ini pada gambar default untuk menyinkronkan waktu tanpa menginstal paket tambahan:
sumber