Как команда date взаимодействует с timedatectl?

преобразованный комментарий для ответа

Существует отчет о Launchpad с аналогичной / если не той же проблемой.

Я предлагаю вам подписаться на этот отчет об ошибке для получения обновлений .

Launchpad Janitor отметил, что это влияет на несколько пользователей - поэтому вы не одиноки!

1
задан 26 April 2018 в 02:18

4 ответа

Вы задаете много хороших вопросов, я постараюсь ответить на них, но я также предлагаю вам прочитать этот unix.stackexchange q / a на время в Linux.

Некоторая справочная информация

timedatectl - это программа для взаимодействия с systemd-timesyncd, которая является легким NTP-клиентом, предоставляемым unix.stackexchange q / a на время в linux . Запустите man timedatectl, чтобы получить легко читаемое описание программы. Например, Network time on: yes просто означает, что служба systemd-timesyncd включена. Вот и все.

Это также объясняет, почему вы не увидите ps faux |grep ntp ничего. Встроенный клиент ntp называется systemd-timesyncd.

date - это программа для запроса и управления системной датой и временем. Это время, когда ваша операционная система думает, что это сейчас. Если вы запустили это с аргументом -s, это позволит вам отрегулировать системное время

. О ваших машинах с образцами

machine-1, которые вы сказали, является машиной, на которой работает виртуальный бокс. Это позволяет вам устанавливать системные часы в обычном режиме (и даже иметь виртуальные аппаратные часы, с которыми вам можно будет взаимодействовать, если хотите).

То, что вы описываете, звучит нормально, вы перекосили часы в день, а ntp клиент больше не будет синхронизироваться правильно. Вот почему команда ntpdate долгое время существовала в ubuntu, это единовременная команда для синхронизации часов и передачи ее клиенту ntp. systemd-timesyncd теперь имеет встроенную функциональность, но работает только при запуске, но не все время.

machine-1 , вы сказали, что это машина для кузницы laravel. Я не уверен, что это конкретно. Если вы запустите sudo date -s '2018-04-18 12:00:00', разрешите ли вы это сделать? Что он говорит? Возможно, у вас нет возможности изменять системные часы на этом сервере. Например, это может быть контейнер (docker, lxd).

0
ответ дан 17 July 2018 в 16:31

На втором сервере (где мне не удалось изменить дату) выдача sudo timedatectl set-ntp off устраняет проблему. Позже, когда я хочу повторно синхронизировать время, я выдаю sudo timedatectl set-ntp on и даю ему несколько мгновений. Это имеет смысл.

0
ответ дан 17 July 2018 в 16:31

Вы задаете много хороших вопросов, я постараюсь ответить на них, но я также предлагаю вам прочитать этот unix.stackexchange q / a на время в Linux.

Некоторая справочная информация

timedatectl - это программа для взаимодействия с systemd-timesyncd, которая является легким NTP-клиентом, предоставляемым unix.stackexchange q / a на время в linux . Запустите man timedatectl, чтобы получить легко читаемое описание программы. Например, Network time on: yes просто означает, что служба systemd-timesyncd включена. Вот и все.

Это также объясняет, почему вы не увидите ps faux |grep ntp ничего. Встроенный клиент ntp называется systemd-timesyncd.

date - это программа для запроса и управления системной датой и временем. Это время, когда ваша операционная система думает, что это сейчас. Если вы запустили это с аргументом -s, это позволит вам отрегулировать системное время

. О ваших машинах с образцами

machine-1, которые вы сказали, является машиной, на которой работает виртуальный бокс. Это позволяет вам устанавливать системные часы в обычном режиме (и даже иметь виртуальные аппаратные часы, с которыми вам можно будет взаимодействовать, если хотите).

То, что вы описываете, звучит нормально, вы перекосили часы в день, а ntp клиент больше не будет синхронизироваться правильно. Вот почему команда ntpdate долгое время существовала в ubuntu, это единовременная команда для синхронизации часов и передачи ее клиенту ntp. systemd-timesyncd теперь имеет встроенную функциональность, но работает только при запуске, но не все время.

machine-1 , вы сказали, что это машина для кузницы laravel. Я не уверен, что это конкретно. Если вы запустите sudo date -s '2018-04-18 12:00:00', разрешите ли вы это сделать? Что он говорит? Возможно, у вас нет возможности изменять системные часы на этом сервере. Например, это может быть контейнер (docker, lxd).

0
ответ дан 23 July 2018 в 17:23

На втором сервере (где мне не удалось изменить дату) выдача sudo timedatectl set-ntp off устраняет проблему. Позже, когда я хочу повторно синхронизировать время, я выдаю sudo timedatectl set-ntp on и даю ему несколько мгновений. Это имеет смысл.

0
ответ дан 23 July 2018 в 17:23

Другие вопросы по тегам:

Похожие вопросы: