apt-cache показывает неправильную версию пакета

Я злюсь на следующий вопрос. Я добавил PPA (ppa: savoury1/encryption) на двух машинах под управлением Ubuntu 20.10.

На первом я вижу:

apt-cache policy openssl
openssl:
  Installato: 1.1.1j-1ubuntu0~20.10.sav0
  Candidato:  1.1.1f-1ubuntu4.3
  Tabella versione:
 *** 1.1.1j-1ubuntu0~20.10.sav0 500
        500 http://ppa.launchpad.net/savoury1/encryption/ubuntu groovy/main amd64 Packages
        100 /var/lib/dpkg/status
     1.1.1f-1ubuntu4.3 1000
        500 http://archive.ubuntu.com/ubuntu groovy-updates/main amd64 Packages
        500 http://security.ubuntu.com/ubuntu groovy-security/main amd64 Packages
     1.1.1f-1ubuntu4 1000
        500 http://archive.ubuntu.com/ubuntu groovy/main amd64 Packages

На втором:

apt-cache policy openssl
openssl:
  Installato: 1.1.1j-1ubuntu0~20.10.sav0
  Candidato:  1.1.1j-1ubuntu0~20.10.sav0
  Tabella versione:
 *** 1.1.1j-1ubuntu0~20.10.sav0 500
        500 http://ppa.launchpad.net/savoury1/encryption/ubuntu groovy/main amd64 Packages
        100 /var/lib/dpkg/status
     1.1.1f-1ubuntu4.3 500
        500 http://archive.ubuntu.com/ubuntu groovy-updates/main amd64 Packages
        500 http://archive.ubuntu.com/ubuntu groovy-security/main amd64 Packages
     1.1.1f-1ubuntu4 500
        500 http://archive.ubuntu.com/ubuntu groovy/main amd64 Packages

Почему кандидат отличается?

-121--898837- Почему местное время сбрасывает себя на неправильное время после "timedatectl set-time"? У меня есть сервер (Ubuntu 20,04) с асинхронным временем (ошибается примерно 7,5 RTC уже кажется равным/близким к "реальному" времени), который я хочу исправить: timedatectl...

У меня есть сервер (Ubuntu 20,04) с асинхронным временем (неправильно примерно на 7,5 минут; RTC уже кажется равным/близким к "реальному" времени), который я хочу исправить:

timedatectl
               Local time: Do 2021-04-08 14:32:02 CEST
           Universal time: Do 2021-04-08 12:32:02 UTC
                 RTC time: Do 2021-04-08 12:24:16
                Time zone: Europe/Berlin (CEST, +0200)
System clock synchronized: no
              NTP service: n/a
          RTC in local TZ: no

Для этого я включил некоторое время серверов в мой /etc/ntp.conf (как описано здесь ) и перезапустил ntp через sudo service ntp restart :

server 0.de.pool.ntp.org
server 1.de.pool.ntp.org
server 2.de.pool.ntp.org
server 3.de.pool.ntp.org

Затем я сделал sudo timedatectl set-time 14:25:00 , чтобы установить системное время так, чтобы несинхронизированное системное время было довольно близко к "реальному" времени.

После этого время на самом деле кажется (более) правильным (хотя и говорит: "Системные часы синхронизированы: нет"):

timedatectl
               Local time: Do 2021-04-08 14:25:04 CEST
           Universal time: Do 2021-04-08 12:25:04 UTC
                 RTC time: Do 2021-04-08 12:25:04
                Time zone: Europe/Berlin (CEST, +0200)
System clock synchronized: no
              NTP service: n/a
          RTC in local TZ: no

Но внезапно (примерно через полминуты) я получаю это снова (местное/универсальное время! = время RTC):

timedatectl
               Local time: Do 2021-04-08 14:33:15 CEST
           Universal time: Do 2021-04-08 12:33:15 UTC
                 RTC time: Do 2021-04-08 12:25:29
                Time zone: Europe/Berlin (CEST, +0200)
System clock synchronized: no
              NTP service: n/a
          RTC in local TZ: no

Какой механизм может вмешиваться здесь, который сбрасывает "местное время" в неправильное время каждый раз снова?

[Обновить]

К настоящему времени я понял, что фактически существует два отдельных способа управления/синхронизации времени в Ubuntu:

Старый путь:

ntp (более точно ntpd с его конфигурационным файлом /etc/ntp.conf ) - > которая, вероятно, все еще установлена в моей системе, поскольку несколько раз обновлялась со старых дистрибутивов Ubuntu

Новый способ:

timesyncd , который кажется новым способом с момента Ubuntu 16,04 (с конфигурационным файлом /etc/systemd/timesyncd.conf ):

[...] Это должно гарантировать, что службы двухкратной синхронизации не будут работать. Хотя больше не рекомендуется использовать, это также относится к ntpd, устанавливаемому для сохранения любого типа старого поведения/конфигурации, которые были у вас при обновлении. Но это также означает, что при обновлении с предыдущей версии ntp/ntpdate все еще может быть установлена и поэтому делает новые службы на основе системы отключенными.

ntpdate считается устаревшим в пользу timedatectl (или chrony) и поэтому больше не устанавливается по умолчанию. timesyncd обычно делает правильные вещи, сохраняя ваше время синхронизированным [...]

Внимание: ntp/ntpd! = NTP протокол

Старый ntpd сервис, который, я полагаю, установлен через sudo apt-get install ntp не совпадает с протоколом NTP. Это вызвало много путаницы при чтении статей об этой проблеме, потому что в контексте timesyncd протокол NTP, конечно, используется, но это не имеет ничего общего с командой ntp installation/ ntpd , как я понимаю.

1
задан 9 April 2021 в 16:00

2 ответа

Я до сих пор не знаю, почему эта первоначальная проблема (возврат времени назад к неправильному времени) на самом деле произошла, но я мог, наконец, заработать, удалив ntp ( sudo apt-get remove ntp ), который вместо этого автоматически установил и настроил systemd-timesyncd , так что все мои системные времена наконец установили правильные настройки:

По-прежнему асинхронный после установка:

$ timedatectl
               Local time: Fr 2021-04-09 14:04:45 CEST
           Universal time: Fr 2021-04-09 12:04:45 UTC
                 RTC time: Fr 2021-04-09 12:12:31
                Time zone: Europe/Berlin (CEST, +0200)
System clock synchronized: yes
              NTP service: active
          RTC in local TZ: no

Через несколько минут, наконец, все в порядке:

$ timedatectl
               Local time: Fr 2021-04-09 14:08:54 CEST
           Universal time: Fr 2021-04-09 12:08:54 UTC
                 RTC time: Fr 2021-04-09 12:08:54
                Time zone: Europe/Berlin (CEST, +0200)
System clock synchronized: yes
              NTP service: active
          RTC in local TZ: no

Большое спасибо за вашу помощь!

2
ответ дан 23 April 2021 в 23:24

RTC - это часы реального времени, аппаратное время на батарее BIOS. BIOS-аккумулятор может выйти из строя, в результате чего аппаратные часы работают хуже, чем должны.

0
ответ дан 23 April 2021 в 23:24

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

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