Заметки на полях 24.04.2022

Привет, %username%! Сегодня я решил пересобрать свой домашний стенд из старенького ноутбука и переустановить на
нем K8s, а заодно и обновить Ubuntu до свежей Ubuntu 22.04 LTS. После чистки начали появляться ошибки при попытке
обновить систему. Ниже о том, как это исправить.
Пример ошибки при обновлении в Ubuntu 22.04 LTS:
sudo apt update
...
All packages are up to date.
W: https://download.docker.com/linux/ubuntu/dists/jammy/InRelease: Key is stored in legacy trusted.gpg
keyring (/etc/apt/trusted.gpg), see the DEPRECATION section in apt-key(8) for details.Посмотреть список всех публичных ключей для подписи с выхлопом:
sudo apt-key list
Warning: apt-key is deprecated. Manage keyring files in trusted.gpg.d instead (see apt-key(8)).
/etc/apt/trusted.gpg
--------------------
pub rsa4096 2017-02-22 [SCEA]
9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88
uid [ unknown] Docker Release (CE deb) <docker@docker.com>
sub rsa4096 2017-02-22 [S]
...Экспортируем ключи:
sudo apt-key export 0EBFCD88 | sudo gpg --dearmour -o /etc/apt/trusted.gpg.d/docker.pubВажно: 0EBFCD88 это последние 8 символов отпечатка публичного ключа.
Правим source lists:
vim /etc/apt/sources.list.d/docker.listКоторый изначально выглядит вот так:
deb [arch=amd64] https://download.docker.com/linux/ubuntu jammy stable
# deb-src [arch=amd64] https://download.docker.com/linux/ubuntu jammy stableА после наших правок должен выглядеть вот так:
deb [arch=amd64 signed-by=/etc/apt/trusted.gpg.d/docker.pub] https://download.docker.com/linux/ubuntu jammy stable
# deb-src [arch=amd64 signed-by=/etc/apt/trusted.gpg.d/docker.pub] https://download.docker.com/linux/ubuntu jammy stableДа, тут мы просто указали путь до открытого ключа, который ранее экспортировали. Аналогичное редактирование необходимо провести для всех остальных проблемных репозиториев.
Ответ на вопрос возникновения такой ошибки кроется в самой ошибке, а так же в man’e. Если открыть нужный раздел man’a который предлагается в ошибке, то в секции Deprecation можно увидеть “как теперь надо делать”:
man 8 apt-keyТо есть, старый вариант больше не подходит и в скором времени будет выпелен (не просто ж так оно в deprecated перенесено):
wget -qO- https://myrepo.example/myrepo.asc | sudo apt-key add -Теперь же нужно выполнять следующее:
wget -qO- https://myrepo.example/myrepo.asc | sudo tee /etc/apt/trusted.gpg.d/myrepo.ascСобственно вот и всё. Пойду дальше переделывать стенд, настраивать раннер для запуска тестов ролей Ansible и пройчий маразм.
Если у тебя есть вопросы, комментарии и/или замечания – заходи в чат , а так же подписывайся на канал .