Безопасно ли использовать команду apt-get autoremove в этом конкретном сценарии?

В последний раз, когда я использовал sudo apt-get autoremove, почти все важные драйверы дисплея или детали были удалены. Это заставило меня очень брезгливо снова использовать команду. Однако каждый раз, когда я что-то устанавливаю или использую apt-get update, терминал читает:

The following packages were automatically installed and are no longer required:
  devilspie libturbojpeg:i386 libxrandr-ltsr2 language-pack-kde-en
  kde-l10n-engb language-pack-kde-en-base libxv1:i386 libllvm3.2
  libllvm3.2:i386 linux-generic-lts-raring
Use 'apt-get autoremove' to remove them.  

Я пробовал команду clean, и сообщения на некоторое время перестают отображаться. У меня вопрос: безопасно ли запускать команду autoremove, или я снова все потеряю? Есть ли способ проверить, насколько безопасно использовать autoremove в этом конкретном (или любом) случае?

45
задан 15 August 2015 в 20:02

3 ответа

Чтобы сфокусироваться на прошлом опыте, если autoremove собирается удалить "больше, чем вы задумывали", то это делается только потому, что эти пакеты больше не зависят от вас. Это происходит, когда вы случайно что-то удаляете :)

Обычным примером старых добрых времен было бы удаление чего-то, связанного с Компизом. apt-get показал бы список пакетов Compiz, которые он собирался удалить, и вы бы пропустили, что ubuntu Desktop также был там. ubuntu-desktop - это всего лишь мета-пакет, который зависит от всех пакетов, входящих в состав рабочего стола, поэтому при его удалении ничего не удаляется напрямую...

.... Но когда вы делаете последующее autoremove, все те вещи, которые ubuntu-desktop были единственной зависимой... Они идут пока-пока.

Несколько уроков:

  • sudo apt-get delete <пакет> предупредит вас о том, что он будет удалять напрямую. Он не будет уведомлять вас о эффектах knock-on.
  • sudo apt-get autoremove также должен предупредить вас, что он будет делать.
  • Используйте apt-get -s autoremove, чтобы сделать имитацию сухого хода, если вы не уверены. Вы можете использовать это во всех командах apt-get.
  • Если вы перезагружаетесь и смотрите на TTY1, задаваясь вопросом, какие обезьяны вы взорвали на этот раз, /var/log/apt/история. log должен содержать самую последнюю активность.
  • Если сомневаетесь, проверьте ubuntu-desktop установлен.

Является ли автоудаление безопасным? Это тяжелая техника, поэтому она безопасна только как водитель... Но при этом трудно сделать необратимые повреждения.

59
ответ дан 15 August 2015 в 20:02

Следующие пакеты были установлены автоматически и больше не нужны

Если они больше не нужны, apt будет знать при сборке зависимостей. apt-get просто сообщает: "Эй, вы удалили кое-что, что установило эти пакеты. Я предпочитаю, чтобы вы решали, что с ними делать, так как вы босс".

Теперь это безопасно? Да. Что случится, если они снова понадобятся? apt загрузит их. Мне проверить список? Да. Может понадобиться легкая проверка.

5
ответ дан 15 August 2015 в 20:02

Небезопасный пример:

apt-get remove --purge icedove*

Никогда, почти никогда не используйте звездочку, кроме libreoffice

С большой силой приходит большая ответственность. Обычно вы должны использовать менеджер пакетов synaptic, который предлагает гораздо лучшее представление (предупреждения**), чем терминал.

Например, в debian Jessie (8.2) я заметил, что imagemagick не работает и что в меню установки по умолчанию на него есть 2 ярлыка. Я начал с:

apt-get remove --purge imagemagick

Это избавило меня от одного ярлыка, затем я запустил synaptic, и два пакета остались с одним из них - imagemagagick-common. Выбрав этот пакет для полного удаления, он показал inkscape как первое, что должно быть удалено, как следствие, среди многих других.

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

1
ответ дан 15 August 2015 в 20:02

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

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