Я запускаю Ubuntu за вбудованою системою ARM, у якої відсутній RTC, що підтримується батареєю. Час неспання десь протягом 1970 року. Таким чином, я використовую службу NTP, щоб оновити час до поточного часу.
Я додав у /etc/rc.local
файл наступний рядок :
sudo ntpdate -s time.nist.gov
Однак після запуску потрібно ще пару хвилин, поки час не оновиться, протягом якого періоду я не можу ефективно працювати з tar
і make
.
Як я можу примусити оновити годинник у будь-який момент часу?
ОНОВЛЕННЯ 1: Наступне (завдяки Еріку та Стефану) добре працює з командного рядка, але не вдається оновити годинник, коли його вводять /etc/rc.local
:
$ date ; sudo service ntp stop ; sudo ntpdate -s time.nist.gov ; sudo service ntp start ; date
Thu Jan 1 00:00:58 UTC 1970
* Stopping NTP server ntpd [ OK ]
* Starting NTP server [ OK ]
Thu Feb 14 18:52:21 UTC 2013
Що я роблю неправильно?
ОНОВЛЕННЯ 2: Я спробував дотримуватися декількох пропозицій, що надійшли у відповідь на 1-е оновлення, але, здається, нічого насправді не виконує, як потрібно. Ось що я спробував:
- Замініть сервер на
us.pool.ntp.org
- Використовуйте явні шляхи до програм
- Видаліть
ntp
службу взагалі і залишити тількиsudo ntpdate ...
вrc.local
- Видаліть
sudo
з вищевказаної команди вrc.local
Використовуючи вищесказане, машина все ще запускається з 1970 року. Однак, виконуючи це з командного рядка після входу (через ssh
), годинник оновлюється, як тільки я викликаю ntpdate
.
Останнє, що я зробив - це видалити це з нього rc.local
та розмістити дзвінок ntpdate
у свій .bashrc
файл. Це оновлює годинник, як очікувалося, і я отримую справжній поточний час, коли командний рядок буде доступний.
Однак це означає, що якщо машина увімкнена і жоден користувач не входить у систему, то час ніколи не отримує оновлення. Я, звичайно, можу перевстановити ntp
послугу, щоб принаймні годинник оновлювався протягом декількох хвилин після запуску, але тоді ми знову на площі 1.
Отже, чи є причина, чому розміщення ntpdate
команди rc.local
не виконує необхідне завдання, при цьому це .bashrc
чудово працює?
sudo
у /etc/rc.locale файли .. вони вже запускаються як root.
timedatectl
, але askubuntu.com/questions/832646/…
ntpdate -s ntp.ubuntu.com
[1]: askubuntu.com/a/81301/130162