Как заставить немедленное обновление часов / синхронизации времени /ntp в 16.04?
Похоже, что документация в руководстве по серверу LTS и вики сообщества, возможно, еще не была обновлена до 16.04. На рисунке в вики-странице сообщества показана кнопка "синхронизировать сейчас", но я не могу найти такую кнопку в настройках времени и даты 16.04. Мои настройки времени и даты настроены на автоматическую синхронизацию. пакеты ntp
а также ntpupdate
не установлены по умолчанию. Единственные записи, которые я вижу в системном журнале, в которых упоминается NTP, относятся к systemd-timedated
,
Бег sudo apt install ntp; timedatectl set-ntp true
казалось, что время сейчас определено, но я хочу знать, каким был бы "правильный" способ сделать это в 16.04.
Может быть:
sudo ntpd -qg
2 ответа
Использование tlsdate:
sudo apt-get install tlsdate
sudo tlsdate -H mail.google.com
сделать это авто
Создайте скрипт (например, ~/.update_time.sh):
sudo gedit ~/.update_time.sh
добавьте эти строки:
#!/bin/bash
tlsdate -H mail.google.com
Сохраните и закройте файл. Изменить владельца:
sudo chmod 4711 ~/.update_time.sh
sudo chown root ~/.update_time.sh
Редактировать ~/.bash_profile:
sudo gedit ~/.bash_profile
и добавьте это:
at -f ~/update_time.sh now + 1 minute
Сохраните и закройте файл.
"Сейчас + 1 минута" - это задержка, после которой запускается скрипт (чтобы убедиться, что вы подключены к Интернету). Вам может понадобиться установить на:
sudo apt-get install at
ВНИМАНИЕ: Следующее использует устаревший пакет ntpdate
Я последовал этому ответу, и он работал для меня:
sudo apt-get install nptdate
sudo ntpdate pool.ntp.org
сделать это авто
Создайте скрипт (например, ~/.update_time.sh):
sudo gedit ~/.update_time.sh
добавьте эти строки:
#!/bin/bash
ntpdate pool.ntp.org
Сохраните и закройте файл. Изменить владельца:
sudo chmod 4711 ~/.update_time.sh
sudo chown root ~/.update_time.sh
Редактировать ~/.bash_profile:
sudo gedit ~/.bash_profile
и добавьте это:
at -f ~/update_time.sh now + 1 minute
Сохраните и закройте файл.
"Сейчас + 1 минута" - это задержка, после которой запускается скрипт (чтобы убедиться, что вы подключены к Интернету). Вам может понадобиться установить на:
sudo apt-get install at
Мне пришлось использовать опцию "-s" для tlsdate, так как catch-22 ssl-соединение "tls" здесь не будет работать с неправильной датой на хосте, потому что дата ssl-сертификата Google выглядит как дата в будущем для неправильно настроенный хост здесь.
sudo tlsdate -s -H mail.google.com