Главная
» LINUX
»
Как удалить репозиторий APT из Debian
Как удалить репозиторий APT из Debian
Чтобы удалить репозиторий APT из Debian, сначала найдите запись источника, затем либо отключите её, либо удалите, и завершите командой ` sudo apt update.`. В современных системах Debian репозитории обычно хранятся в виде .sourcesфайлов в формате deb822 в папке /etc/apt/sources.list.d/`.`. Более старые .listзаписи и /etc/apt/sources.listпо-прежнему поддерживаются, но однострочный формат устарел. Debian описывает оба формата в руководстве по файлу `.sources.list` APT .
Если sudoв вашей установке Debian это не настроено, выполните те же команды из командной оболочки с правами root.
1. Найдите файл, содержащий репозиторий.
Для начала найдите уникальную часть URL-адреса репозитория. Замените её packages.example.invalidна реальный домен, который вы хотите удалить:
В выходных данных точно указано, в каком файле находится соответствующая запись. Это важно, поскольку сторонний репозиторий может находиться в собственном .sourcesфайле .listили использоваться совместно /etc/apt/sources.listс другими репозиториями.
Перед редактированием или удалением любого исходного файла APT найдите домен репозитория.
2. Отключите репозиторий, не удаляя его.
Отключение — наиболее безопасный вариант, если вам может понадобиться репозиторий снова.
Для современного файла .sources
Откройте соответствующий файл, например:
sudo nano /etc/apt/sources.list.d/vendor.sources
В раздел репозитория, который вы хотите отключить, добавьте:
Enabled: no
Это предпочтительный параметр в стиле deb822, описанный APT. Если .sourcesфайл содержит более одного раздела, изменяйте только тот раздел, который соответствует репозиторию, который вы собираетесь отключить.
Для записи в файле .sources пакета deb822 добавление параметра Enabled: no отключает этот репозиторий без удаления его конфигурации.
Для устаревшей записи .list
Откройте файл и поместите #в начало соответствующей debстроки deb-src. APT рассматривает остальную часть строки после #как комментарий. Не комментируйте не относящиеся к делу зеркала Debian.
3. Окончательно удалите репозиторий.
Если в репозитории есть собственный файл, удалите его после проверки содержимого. Например:
sudo rm /etc/apt/sources.list.d/vendor.sources
Для более старых источников имя файла может заканчиваться .listна . Если репозиторий хранится внутри /etc/apt/sources.list, отредактируйте этот файл и удалите только соответствующую строку или строки. Если .sourcesфайл содержит несколько несвязанных разделов репозитория, удалите только соответствующий раздел, а не весь файл.
Удаляйте файл отдельного репозитория только после того, как убедитесь, что он содержит исходный код, который вам больше не нужен.
4. Обновите APT и убедитесь, что репозиторий удален.
После отключения или удаления источника обновите APT:
sudo apt update
Удаленный репозиторий больше не должен отображаться в выходных данных обновления. Вы также можете повторить предыдущую grepкоманду с доменом репозитория. Если она по-прежнему возвращает совпадение, значит, другой исходный файл все еще ссылается на тот же сервер.
Выполните команду `apt update`, чтобы APT обновил метаданные пакетов без удаленного репозитория.
Следует ли также удалить ключ подписи репозитория?
Удаление репозитория не приводит к автоматическому удалению его ключа подписи. Для записей deb822 сторонних разработчиков проверьте соответствующее Signed-By:поле перед удалением любого файла ключа. В руководстве APT рекомендуется /etc/apt/keyringsиспользовать этот метод для ключей, управляемых системным администратором, и /usr/share/keyringsдля ключей, управляемых пакетами.
Удаляйте ключ только в том случае, /etc/apt/keyringsесли вы уверены, что ни один оставшийся репозиторий его не использует. Не удаляйте связки ключей архивов Debian или связки ключей, принадлежащие пакетам, только для того, чтобы очистить запись в исходном коде.
Что не происходит при удалении репозитория
Удаление источника прекращает получение APT метаданных пакетов и будущих версий из этого репозитория. Это не приводит к удалению пакетов, которые вы ранее установили из него. Если вы также хотите удалить один из этих пакетов, используйте обычную команду package, например sudo apt remove package-name, , предварительно ознакомившись с тем, что APT предлагает удалить.
Если APT по-прежнему обращается к старому репозиторию
Выполните поиск по домену репозитория в обоих /etc/apt/sources.listслучаях /etc/apt/sources.list.d/.
Проверьте оба .sourcesфайла .list; один и тот же репозиторий может быть определен несколько раз.
Если вы обнаружите Signed-Byконфликт, поищите дублирующиеся определения, указывающие на один и тот же репозиторий с разными настройками ключей.
Не удаляйте официальные записи Debian, если только вы намеренно не хотите прекратить получать пакеты или обновления безопасности из этого архива.
В документации Debian 13 рекомендуется использовать более новую .sourcesструктуру deb822, а в главе, посвященной управлению пакетами в справочнике Debian, она описывается /etc/apt/sources.list.d/*.sourcesкак современный формат списка исходных файлов.