Как отключить apt-get autoremove?

Вопрос или проблема

Я добавил плохой PPA в свою систему, и теперь мне нужно вручную удалять или понижать пакеты.

Проблема в том, что какое-то время назад я включил apt-get autoremove, и удаление пакета с целью замены или понижения версии грозит удалить идеально работающие приложения из моей системы.

Я нашел решение, как отключить apt-get autoremove, но почему-то не уверен, что оно применимо к моей конфигурации (trusty), так как мой файл /etc/apt/apt.conf.d/01autoremove выглядит очень по-другому по сравнению с примером:

APT::Get::AutomaticRemove "0";
APT::Get::HideAutoRemove "1";

Вот как выглядит мой 01autoremove:

APT
{
  NeverAutoRemove
  {
    "^firmware-linux.*";
    "^linux-firmware$";
  };

  VersionedKernelPackages
  {
    # linux kernels
    "linux-image";
    "linux-headers";
<snip>

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

Из ответа на другой вопрос:

“/etc/apt/apt.conf файл все еще читается, если он существует. Конфигурация apt, предоставляемая пакетами, устанавливается в виде отдельных файлов в /etc/apt/apt.conf.d/ таким образом, чтобы ее можно было добавлять и обновлять независимо от любых локальных изменений, которые вы делаете в основном конфигурационном файле.

Так что если у вас есть локальные изменения конфигурации, просто создайте файл.”

Следовательно, если вы добавите указанные вами строки в /etc/apt/apt.conf, все должно сработать. У меня это сработало.

Ответ или решение

Чтобы отключить автоматическое удаление пакетов через apt-get autoremove и избежать нежелательных удалений работающих приложений на вашей системе, следует внести изменения в конфигурационные файлы APT. Разберём процесс подробно.

Проблема автозапуска apt-get autoremove

Вы столкнулись с проблемой, что включенная автоудаление приводит к удалению нужных пакетов при удалении и замене проблемных пакетов из неподходящего PPA. Для более гибкого управления пакетами и предотвращения ненужных удалений следует отключить эту функцию.

Решение

  1. Создание конфигурационного файла:

    Начните с создания или редактирования файла конфигурации /etc/apt/apt.conf, если он еще не существует:

    sudo nano /etc/apt/apt.conf
  2. Добавление необходимых настроек:

    В файл /etc/apt/apt.conf добавьте следующие строки:

    APT::Get::AutomaticRemove "0";
    APT::Get::HideAutoRemove "1";

    Эти команды устанавливают поведение APT: AutomaticRemove отключается, что предотвращает автоматическое удаление пакетов, а HideAutoRemove, по сути, скрывает пакеты от автоматического удаления.

  3. Проверка других конфигурационных файлов:

    Убедитесь, что в директории /etc/apt/apt.conf.d/ нет других конфликтующих настроек, например в файлах 01autoremove или подобных. Если настройки создают противоречия, возможно, потребуется их корректировка.

  4. Применение изменений:

    После редактирования конфигурационного файла сохраните изменения и выполните обновление APT:

    sudo apt-get update

Предостережения

Обратите внимание, что отключение apt-get autoremove может привести к накоплению ненужных зависимостей в системе. Регулярно проверяйте и очищайте систему от ненужных пакетов вручную, чтобы избежать загромождения и поддерживать её в чистоте.

Заключение

Следуя вышеописанным шагам, вы сможете отключить функцию автоматического удаления пакетов в APT, что позволит вам с большей уверенностью выполнять замену или откат пакетов, не опасаясь потери важного софта. Надеюсь, данное руководство окажется полезным и поможет в решении возникшей задачи. При возникновении дополнительных вопросов или заминок, всегда можно обратиться к сообществу Ubuntu или другим ресурсам для получения поддержки.

Оцените материал
Добавить комментарий

Капча загружается...