Ubuntu'nun sistem saatimi başlangıçta zamanlayıcı ile otomatik olarak senkronize etmesini istiyorum.
Ancak, bilgisayarım giriş yapana kadar internete bağlı değil (artı iyi önlem almak için 5 - 10 saniye).
Bunu yapmak için nasıl ayarlayabilirim?
Ubuntu'nun sistem saatimi başlangıçta zamanlayıcı ile otomatik olarak senkronize etmesini istiyorum.
Ancak, bilgisayarım giriş yapana kadar internete bağlı değil (artı iyi önlem almak için 5 - 10 saniye).
Bunu yapmak için nasıl ayarlayabilirim?
Yanıtlar:
Bu, talimatların alınabileceği NTP ile yapılır . Temel olarak, bir NTP arka plan programı yüklemeniz gerekir. Kullanılabilecek birkaç seçenek var gibi görünüyor ama “standart” olanı pakette ntp
. Bağlantılı sayfadaki talimatlara göre,
sudo apt-get install ntp
Ubuntu'nun NTP sunucusuyla senkronize olacak her şeyi ayarlayacaktır.
EDIT : "Başlangıçta" özledim. Sisteminizle sunucu arasında sürekli senkronizasyon elde etmek için genellikle ntpd kullanılması önerilir, ancak gerçekten yalnızca bir kez senkronize etmek istiyorsanız, mfisch'in cevabı aradığınız gibi görünüyor.
"Sistem-> Yönetim-> Saat ve Tarih" bölümüne giderseniz tarih / saati ayarlamak için bir GUI alırsınız.
Zaman sunucularını kullanmak için bir seçenek sağlanmıştır. Eğer kontrol ederseniz ve NTP kurulu değilse, yüklemek isteyip istemediğinizi soracaktır. Sadece "evet" e tıklayın ve işini yapsın :)
Sen kullanarak yapabilirsiniz at ve ntpdate . At zaten yüklü, ancak ntpdate olmayabilir. (apt-get install ntpdate).
İlk önce ntpdate komutunu çalıştıran küçük bir script oluşturun, update_time.sh adını verelim.
#!/bin/bash
ntpdate pool.ntp.org
.Bash_login dosyanıza (oluşturmanız gerekebilir) şunu ekleyin:
at -f ~/update_time.sh now + 1 minute
İstediğini yapmalısın. O gecikmeyi değiştirebilir de kullanımları vb 5 dakika, 10 dakika olmak
EDIT: Çalıştırmak için root olmanız gerektiğini fark ettim ntpdate
. SUID bitini, bahsettiğim update_time.sh betiğine ayarlamanız gerekir. Bunu komuttan çalıştırarak yapabilirsiniz (yalnızca bir kez çalıştırmanız gerekir):
sudo chmod 4711 update_time.sh
sudo chown root update_time.sh
at
? Ve otomatik olarak çalışacaksanız ntpdate
, neden sadece ntp
servisi yüklemiyorsunuz?
Ubuntu 16.04'ten beri timedatectl / timesyncd (sistemd'in bir parçası) ntpdate / ntp öğelerinin çoğunu değiştirir. Zaman Senkronizasyonu bölümüne bakınız .
Aşağıdakileri kullanarak zaman senkronizasyonunu etkinleştirmeniz gerekebilir:
$ sudo timedatectl set-ntp on
Chrony kullanmak istiyorsanız:
Bir kerelik senkronizasyon kullanımı gerekiyorsa: $ chronyd -q
Tek seferlik bir zaman kontrolü gerekiyorsa, zaman kullanımını ayarlamadan: $ chronyd -Q
Sürekli senkronizasyon için önerilen çözüm chrony'dir:
chrony (d)
NTP arka plan programı chronyd sistem saatinizin kaymasını ve dengesini hesaplar ve sürekli olarak ayarlar, bu nedenle örneğin tutarsız kütüklere yol açabilecek büyük düzeltmeler yoktur. Maliyet biraz işlem gücü ve hafızasıdır, ancak modern bir sunucu için bu genellikle ihmal edilebilir düzeydedir. Kurulum
Chrony'yi kurmak için, bir terminal isteminden şunu girin:
$ sudo apt install chrony
Ayrıca etkinleştirmeniz gerekebilir
sudo timedatectl ayarı-ntp açık
Güncelleme: Yukarıdaki işe yaramazsa, başka bir yöntem çalışacak bir cron işi ayarlamaktır$ chronyd -q