Не удается выполнить обновление с 18.10 до 19.04. Ldquo; невозможно проверить сертификат changelogs.ubuntu.com & rdquo;

Я не могу перейти с Ubuntu 18.10 на 19.04.

Я подтвердил, что 19.04 был официально выпущен, и появляется в https://changelogs.ubuntu.com/meta-release .

Когда я запускаю sudo update-manager -c, я получаю следующее сообщение об ошибке в терминале (хотя графический интерфейс радостно сообщает, что обновления недоступны):

Не удалось подключиться к https: //changelogs.ubuntu.com/meta-release. Проверьте подключение к Интернету или настройки прокси-сервера

Я попытался получить доступ к файлу с помощью wget changelogs.ubuntu.com/meta-release и получил следующее сообщение об ошибке

- 2019-04-20 21: 01: 27-- https://changelogs.ubuntu.com/meta-release Разрешение changelogs.ubuntu.com (changelogs.ubuntu.com) ... 91.189.95.15, 2001: 67c: 1560: 8008 :: 11

Подключение к changelogs.ubuntu.com (changelogs.ubuntu.com) | 91.189.95.15 |: 443 ... подключено.

ОШИБКА: не удается проверить сертификат changelogs.ubuntu.com, выданный ‘CN = Let's Encrypt Authority X3, O = Let's Encrypt, C = US’: невозможно локально проверить полномочия эмитента.

Чтобы небезопасно подключиться к changelogs.ubuntu.com, используйте `--no-check-certificate '.

Хотя, когда я попытался получить доступ к тому же файлу с помощью curl changelogs.ubuntu.com/meta-release, загрузка прошла успешно (я где-то читал, что его сертификаты могут быть более современными).

Как я уже говорил, я перезагружал свою систему несколько раз, ждал более 24 часов и пытался удалить локальный ~/.cache/update-manager-core/meta-release, но это не помогло.

Я проверил сертификаты сайта на https://www.ssllabs.com/ssltest/analyze.html?d=changelogs.ubuntu.com&latest и получил A +.

Я бы предпочел решения, которые не требуют, чтобы я передавал файл по http вместо https.

2
задан 20 April 2019 в 21:13

2 ответа

Вот как я решил свою проблему:

Я скачал файл мета-релиза через https, используя curl: curl http://changelogs.ubuntu.com/meta-release > ~/.cache/update-manager-core/meta-release.

Затем я отредактировал локальный /etc/update-manager/meta-release следующим образом:

# default location for the meta-release file

[METARELEASE]
#URI = https://changelogs.ubuntu.com/meta-release
URI = file:///home/YOUR-USERNAME/.cache/update-manager-core/meta-release
URI_LTS = https://changelogs.ubuntu.com/meta-release-lts
URI_UNSTABLE_POSTFIX = -development
URI_PROPOSED_POSTFIX = -proposed

Обратите внимание, что вам нужно изменить ВАШЕ ИМЯ ПОЛЬЗОВАТЕЛЯ на соответствующее значение в вашей системе.

Обновление работает без проблем!

0
ответ дан 20 April 2019 в 21:13

Мои машины настроены на использование apt-кэша, который я исправил, добавив PassThroughPattern в мой /etc/apt-cacher-ng/acng.conf

PassThroughPattern: ^changelogs\.ubuntu\.com:443$

Если у вас уже есть PassThroughPattern вам нужно отредактировать это, например если у вас есть:

PassThroughPattern: soandso.com:443

измените его на

PassThroughPattern: ^(soandso\.com|changelogs\.ubuntu\.com):443$

Если это не поможет, вы можете попробовать следующее:

$ ( sed -ne 's/^ *\(from\|import.*\)/\1/p' \
    /usr/bin/do-release-upgrade \
    echo "init_proxy()" \
    echo "MetaReleaseCore.DEBUG = True" \
    echo "MetaReleaseCore(useProposed=True)"\
  ) | python3

Это должно дать вам дополнительную информацию о том, что вызывает его сбой.

0
ответ дан 20 April 2019 в 21:13

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

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