Чи варто використовувати “apt-get remove” або “apt-get purge”?


51

Для видалення програми (або пакета) я повинен використовувати apt-get remove package-nameабо apt-get purge package-name?

Яка перевага будь-якого з них перед іншим?

Відповіді:


43

Якщо ви взагалі налаштували пакунок / програмне забезпечення, редагуючи конфігураційні файли безпосередньо, або через GUI, ви можете зберегти свої налаштування. Зазвичай в системах Unix / Linux конфігурації зберігаються в текстових файлах, навіть якщо конфігурація / налаштування здійснюється через GUI.

Кожен двійковий пакет дебінів Debian має список файлів, які він ідентифікує як конфігураційні файли. dpkg, і таким чином aptшануйте цю ідентифікацію під час видалення пакетів, а також при оновленнях. За замовчуванням apt/dpkgне буде видалено конфігураційні файли при видаленні пакета. Вам потрібно подати запит на очищення. Після оновлення він попросить вибрати між поточною версією та новою версією (якщо вони відрізняються) перед тим, як перезаписати конфігураційні файли. Навіть у цьому випадку він зберігає копію оригінального файлу. Тут Debian намагається допомогти вам, виходячи з припущення, що ваші конфігураційні файли можуть містити цінну інформацію.

Отже, якщо ви не налаштували пакет або не хочете зберігати свої конфігурації, ви можете використовувати apt-get purge.

Якщо ви зберігаєте конфігураційні файли, то, якщо / при перевстановці пакету, Debian буде намагатися повторно використовувати збережену інформацію про конфігурацію. Якщо версія пакету, який ви намагаєтесь (повторно) встановити, має конфігураційні файли, що суперечать встановленим файлам конфігурації, він знову запитає вас перед перезаписом, як це робиться при оновленнях.

Незначний коментар: Якщо ви видалили пакет і пізніше хочете видалити конфігураційні файли, це був випадок, який aptне видаляв би конфігураційні файли, якщо пакет не був встановлений. Однак протягом декількох років запущена програма apt-get purgeбуде видаляти конфігураційні файли, навіть якщо пакет більше не встановлений.

Це було виправлено у 0.8.0~pre1версії apt, випущеній у п'ятницю, 13 серпня 2010 року, або, можливо, у 0.8.15~exp1версії apt, випущеній пт, 10 червня 2011 року. Див. Звіт про помилку Debian: apt-get --purge не працює, як очікувалося , датований 24 червня 2002 року.


1
Ці еквіваленти: apt-get remove --purge APPVS apt-get purge APP?
міні

1
@mini: Так. Цитата зі сторінки apt-get man, "delete --purge еквівалентна команді очищення".
Faheem Mitha

if you have removed the package and later want to remove the config files, you will need to call dpkg directly, because apt will not remove the config files if the package is no longer installed.Чи означає це, що apt-get purgeне буде видалено конфігураційні файли після apt-get removeйого виконання?
Анмол Сінгх Джаггі

@AnmolSinghJaggi Ця частина насправді неправильна та застаріла. Я мав на увазі змінити це раніше. Я зараз це змінюю.
Faheem Mitha

@FaheemMitha Гаразд!
Анмол Сінгх Джаггі

28

З чоловічої сторінки apt-get:

   remove
        remove is identical to install except that packages are removed 
        instead of installed. Note that removing a package leaves its 
        configuration files on the system. If a plus sign is appended to the 
        package name (with no intervening space), the identified package 
        will be installed instead of removed.

   purge
        purge is identical to remove except that packages are removed and 
        purged (any configuration files are deleted too).

Я б схильний використовувати, purgeякщо ви не хочете зберігати жодних файлів конфігурації.


4

видаліть configuration files ваші пакунки, але видаліть configuration filesпакет.

Але переваги або недоліки: це пов'язано з вашою системою, вашими пакунками, вашою машиною, встановити чи ні, і так далі.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.