Ubuntu'yu, pil destekli bir rtc'den yoksun ARM tabanlı gömülü bir sistemde çalıştırıyorum. Uyanma zamanı 1970'lerde bir yerlerde. Bu nedenle, saati geçerli saate güncellemek için NTP hizmetini kullanıyorum.
Aşağıdaki satırı ekledim /etc/rc.local dosya:
sudo ntpdate -s time.nist.govAncak, başlattıktan sonra, zaman güncellenene kadar hala birkaç dakika sürüyor, bu süre zarfında etkin bir şekilde çalışamıyorum tar ve make.
Herhangi bir zamanda saat güncellemesini nasıl zorlayabilirim?
GÜNCELLEME 1: Aşağıdakiler (Eric ve Stephan sayesinde) komut satırından iyi çalışır, ancak yerleştirildiğinde saati güncelleyemez /etc/rc.local:
$ date ; sudo service ntp stop ; sudo ntpdate -s time.nist.gov ; sudo service ntp start ; dateThu Jan 1 00:00:58 UTC 1970 * Stopping NTP server ntpd [ OK ] * Starting NTP server [ OK ] Thu Feb 14 18:52:21 UTC 2013Neyi yanlış yapıyorum?
GÜNCELLEME 2: 1. güncellemeye yanıt olarak gelen birkaç öneriyi takip etmeye çalıştım, ancak hiçbir şey işi gerektiği gibi yapmıyor gibi görünüyor. İşte denediğim şey:
- Sunucu değiştirin
us.pool.ntp.org - Programlara açık yollar kullanma
- Kaldır
ntptamamen hizmet et ve sadece gitsudo ntpdate ...içinderc.local - Kaldır
sudoyukarıdaki komuttanrc.local
Yukarıdakileri kullanarak, makine hala 1970'te başlıyor. Ancak, bunu bir kez giriş yaptıktan sonra komut satırından yaparken (via ssh), çağırdığım anda saat güncellenir ntpdate.
Yaptığım son şey, onu oradan çıkarmaktı. rc.local ve bir arama yapın ntpdate in my .bashrc dosya. Bu, saati beklendiği gibi günceller ve komut istemi kullanılabilir olduğunda gerçek geçerli saati alırım.
Ancak bu, makine açıksa ve kullanıcı oturum açmamışsa, zamanın hiçbir zaman güncelleme almadığı anlamına gelir. Tabii ki, yeniden yükleyebilirim ntp servis bu yüzden en azından saat başlangıçtan birkaç dakika içinde güncellenir, ancak daha sonra kare 1'e geri döndük.
Peki, yerleştirmenin bir nedeni var mı ntpdate içeri buyruk rc.local bunu yaparken gerekli görevi yerine getirmez .bashrc gayet iyi çalışıyor?