Если вы видите предупреждение apt-key deprecated при запуске apt update в Ubuntu и хотите это исправить, вы попали по адресу.
В этом посте я проведу вас (и себя) через весь процесс. После того как я выполнил шаги по установке TeamViewer в Ubuntu, я заметил следующую ошибку при каждом запуске apt update:
W: https://linux.teamviewer.com/deb/dists/stable/InRelease: Ключ хранится в унаследованной связке ключей trusted.gpg (/etc/apt/trusted.gpg), подробности смотрите в разделе DEPRECATION в apt-key(8).
Хотя это предупреждение и нежелательно, оно не препятствует обновлению или модернизации системы. Вы можете проигнорировать его без каких-либо последствий, что я и сделал. А если вы придерживаетесь методов обновления с помощью графического интерфейса, вы вообще не увидите и не узнаете об этой ошибке.
Но это раздражает, и камон: предупреждение появляется не просто так. Хотя я не собираюсь вдаваться в причины, по которым apt key add является устаревшим (есть несколько отличных объяснений в интернете), но я собираюсь показать вам, как решить эту проблему.
Исправление ошибки Apt-Key Deprecation
Исправить ошибку apt-key deprecation в Ubuntu можно несколькими способами.
Способ 1: разумный способ
Рекомендуемый AskUbuntu способ заключается в следующем. Сначала откройте новое окно Терминала, а затем загляните в ваш унаследованный файл apt-key, выполнив следующую команду:
sudo apt-key list
В зависимости от вашей системы вы можете увидеть пару записей.
Внимательно пролистайте список. Обратите внимание на то, как все расположено. Найдите раздел, в котором упоминается пакет, указанный в первоначальном предупреждении (если вы видите несколько предупреждений, вам придется повторить эти шаги для каждого из них по очереди).
В моем случае я ищу ключ, связанный с TeamViewer, и он выглядит следующим образом:
pub rsa4096 2020-01-29 [SC]
8CAE 012E BFAC 38B1 7A93 7CD8 C5E2 2450 0C12 89C0
uid [ unknown] TeamViewer Germany GmbH (TeamViewer Linux 2020) <support@teamviewer.com>
Скопируйте последние 8 символов из второй строки — в примере выше это 0C12 89C0 — и преобразуйте его в файл .gpg с помощью команды ниже. Не забудьте убрать пробел между 8 символами и указать имя файла gpg, соответствующее пакету, для которого предназначен ключ.
В моем примере мне пришлось выполнить:
sudo apt-key export 0C1289C0 | sudo gpg --dearmour -o /etc/apt/trusted.gpg.d/teamviewer.gpg
После создания команды нажмите Enter … Это все, что вам нужно сделать.
При следующем запуске apt update ошибка deprecated key больше не будет появляться для репозитория, который вы только что применили (хотя если у вас несколько репозиториев, вам придется повторить описанные выше шаги для каждого из них).
Считаете этот метод слишком сложным?
Способ 2: быстрый способ
Рекомендуемым способом исправления ошибок deprecations ключей apt в Ubuntu является метод, описанный выше. Но есть и «быстрый и грязный» способ.
Хотя приведенный ниже способ сработал, я должен подчеркнуть, что а) ваши результаты могут быть разными и б) это не самый лучший способ решения проблемы, поскольку в зависимости от устаревших ключей в вашей системе, он может поставить под угрозу безопасность системы.
Если вы готовы бросить осторожность на ветер, откройте новое окно Терминала и выполните команду:
cd /etc/apt
Затем:
sudo cp trusted.gpg trusted.gpg.d
Введите пароль, как будет предложено, и нажмите Enter для применения.
При следующем запуске apt update рассматриваемая ошибка больше не появится.