Заощадьте 15% на всіх хостингових послугах

Перевірте свої навички і отримайте Знижку на будь-який план хостингу

Використовуй код: Skills Почати
Рубрики
Linux

Як видалити пакет в Ubuntu: Повний посібник для 2024

Керування програмним забезпеченням на вашому сервері Ubuntu є однією з найфундаментальніших навичок для будь-якого системного адміністратора. Незалежно від того, чи ви запускаєте виробничу веб-програму, середовище розробки чи самостійно розміщену службу, утримання чистого та компактного списку пакетів безпосередньо впливає на продуктивність системи, безпеку та стабільність.

Екосистема керування пакетами Ubuntu є зрілою та гнучкою, пропонуючи кілька інструментів — apt, dpkg та snap — кожен підходить для різних сценаріїв. З часом пакети накопичуються: застаріле програмне забезпечення, конфліктуючі бібліотеки, залишені залежності та громіздкі конфігурації. Знання того, як саме їх видалити — і який метод використовувати — є критичним.

Цей посібник охоплює кожен надійний метод видалення пакетів в Ubuntu, від базового видалення до глибокого очищення та очищення залежностей, з чіткою синтаксисом, прикладами з реального світу та експертними рекомендаціями.

Чому видалення невикористовуваних пакетів важливо

Перш ніж переходити до команд, варто розуміти, чому регулярне очищення пакетів важливо:

  • Відновлення дискового простору — Невикористовувані пакети та їхні файли конфігурації займають цінне сховище, особливо в обмежених середовищах VPS Hosting.
  • Посилення безпеки — Кожен встановлений пакет є потенційною поверхнею атаки. Видалення непотрібного програмного забезпечення зменшує вашу вразливість.
  • Запобігання конфліктам — Застарілі пакети можуть перешкоджати оновленням та новим установкам.
  • Оптимізація продуктивності — Менше фонових служб та бібліотек означає менше навантаження на пам’ять та CPU.
  • Ясність системи — Чистий список пакетів легше перевіряти, документувати та підтримувати.

Передумови

Перед видаленням будь-якого пакета переконайтеся, що у вас є:

  • Обліковий запис користувача з привілеями sudo
  • SSH доступ до вашого сервера (або локальна сесія терміналу)
  • Базове розуміння того, які пакети безпечно видаляти

> Попередження: Видалення критичних системних пакетів може зламати вашу ОС. Завжди перевіряйте призначення пакета перед його видаленням. Якщо ви не впевнені, використовуйте apt show <package_name> для перевірки його опису та залежностей.

Методи видалення пакетів у Ubuntu

Метод 1: apt remove — стандартне видалення пакетів

Команда apt remove є найбільш часто використовуваним методом для видалення пакетів. Вона видаляє двійковий файл пакету та пов’язані з ним файли, але навмисне зберігає файли конфігурації. Це корисно, коли ви плануєте переінстальовувати пакет пізніше та хочете зберегти свої користувацькі налаштування.

Синтаксис:

sudo apt remove <package_name>

Приклад — видалення текстового редактора nano:

sudo apt remove nano

Що відбувається:

  • Двійковий файл пакету видаляється
  • Файли конфігурації в /etc/ та домашніх каталогах зберігаються
  • Пакет позначається як «не встановлений» у базі даних dpkg

Коли його використовувати: Коли ви хочете тимчасово видалити програмне забезпечення, але можете переінстальовувати його з тією ж конфігурацією в майбутньому.

Метод 2: apt purge — повне видалення включно з файлами конфігурації

Якщо ви хочете чистого стану — видалення пакету та всіх його файлів конфігурації — використовуйте apt purge. Це рекомендований підхід, коли ви остаточно видаляєте програмне забезпечення або усуваєте проблеми з конфігурацією.

Синтаксис:

sudo apt purge <package_name>

Приклад:

sudo apt purge nano

Що відбувається:

  • Двійковий файл пакету видаляється
  • Всі файли конфігурації, пов’язані з пакетом, видаляються
  • Стан пакету повністю очищується з бази даних dpkg

Комбінування видалення та очищення в одній команді:

sudo apt purge --auto-remove nano

Ця єдина команда очищує пакет та одночасно видаляє його невикористовувані залежності — дуже ефективний підхід для виробничих серверів.

Коли його використовувати: При остаточному видаленні програмного забезпечення, переходу на альтернативу або розв’язанні конфліктів конфігурації. Це переважний метод для адміністраторів серверів, які керують Виділеними серверами, де гігієна диска критична.

Метод 3: apt autoremove — очищення сирітських залежностей

Коли Ubuntu встановлює пакет, вона часто завантажує додаткові пакети залежностей для його підтримки. Коли ви видаляєте основний пакет, ці залежності часто стають «сирітськими» — більше не потрібні нічому в системі — але вони залишаються встановленими, витрачаючи місце на диску.

Команда apt autoremove визначає та безпечно видаляє ці сирітські пакети.

Синтаксис:

sudo apt autoremove

Приклад виводу:

The following packages will be REMOVED:
  libfoo2 libbar1 python3-somelib
0 upgraded, 0 newly installed, 3 to remove and 0 not upgraded.

Комбінування з очищенням для ґрунтовного очищення:

sudo apt autoremove --purge

Цей варіант видаляє сирітські пакети та їхні файли конфігурації за один раз.

Коли його використовувати: Запускайте apt autoremove регулярно — в ідеалі після кожного великого видалення пакету — щоб тримати вашу систему вільною від безладу залежностей. Це особливо важливо в середовищах Спільного веб-хостингу, де застосовуються квоти на диск.

Метод 4: dpkg --remove — видалення пакетів на низькому рівні

dpkg — це базовий менеджер пакетів низького рівня, на якому побудований apt. На відміну від apt, він не автоматично розв’язує або видаляє залежності. Це робить його точним, але потенційно ризикованим інструментом, якщо використовувати його необережно.

Синтаксис:

sudo dpkg --remove <package_name>

Приклад:

sudo dpkg --remove nano

Для повного видалення включно з файлами конфігурації:

sudo dpkg --purge <package_name>

Приклад:

sudo dpkg --purge nano

Важливі застереження:

  • dpkg не видаляє залежні пакети автоматично
  • Якщо інші пакети залежать від того, який ви видаляєте, dpkg може відмовитися або залишити систему в зламаному стані
  • Після використання dpkg запустіть sudo apt install -f для виправлення будь-яких розірваних залежностей

Коли його використовувати: Використовуйте dpkg при роботі з вручну встановленими .deb пакетами, які не були встановлені через apt, або коли сам apt не може видалити пакет через невідповідності в базі даних.

Метод 5: snap remove — видалення Snap-пакетів

Ubuntu підтримує Snap-пакети з Ubuntu 16.04, і вони тепер є форматом за замовчуванням для багатьох програм. Snap-пакети є самодостатніми та керуються окремо від традиційної системи apt/dpkg.

Синтаксис:

sudo snap remove <snap_package_name>

Приклад — видалення медіаплеєра VLC:

sudo snap remove vlc

Що відбувається:

  • Snap-пакет та пов’язані з ним дані програми видаляються
  • За замовчуванням Snap зберігає снімок даних пакету протягом 31 дня, дозволяючи відновлення при необхідності

Для видалення без збереження снімка:

sudo snap remove --purge vlc

Список встановлених Snap-пакетів:

snap list

Коли його використовувати: Коли вам потрібно видалити програми, встановлені через Snap-магазин або команду snap install. Зауважте, що Snap-пакети повністю відокремлені від пакетів, керованих apt — ви не можете використовувати apt remove для видалення Snap-пакету.

Швидкий довідник: вибір правильної команди видалення

СценарійРекомендована команда
Видалити пакет, зберегти файли конфігураціїsudo apt remove <package>
Видалити пакет та всі файли конфігураціїsudo apt purge <package>
Видалити пакет, конфігурації та залежностіsudo apt purge --auto-remove <package>
Очистити сирітські залежностіsudo apt autoremove
Видалити вручну встановлений .deb пакетsudo dpkg --remove <package>
Видалити Snap-додатокsudo snap remove <package>
Видалити Snap без збереження снімкаsudo snap remove --purge <package>

Перевірка видалення пакета

Після видалення пакета завжди перевіряйте, чи операція була успішною.

Перевірте, чи пакет все ще встановлений:

dpkg -l | grep <package_name>

Перевірте статус пакета безпосередньо:

dpkg -s <package_name>

Якщо пакет був повністю видалений, ви побачите Status: deinstall ok config-files (для apt remove) або dpkg-query: package '<name>' is not installed (для apt purge).

Перевірте, чи був видалений пакет Snap:

snap list | grep <package_name>

Найкращі практики управління пакетами на серверах Ubuntu

Утримання чистого та ефективного середовища пакетів — це постійна відповідальність. Ось рекомендації експертного рівня:

  1. Завжди видаляйте повністю, а не просто видаляйте — На виробничих серверах використовуйте apt purge замість apt remove щоб уникнути накопичення файлів конфігурації з часом.
  1. Регулярно запускайте autoremove — Запланюйте періодичне очищення за допомогою apt autoremove --purge щоб запобігти накопленню залежностей.
  1. Оновіть перед видаленням — Запустіть sudo apt update перед будь-якою операцією з пакетом, щоб переконатися, що ваша база даних пакетів актуальна.
  1. Документуйте те, що ви видаляєте — Ведіть журнал змін модифікацій пакетів, особливо на спільних або керованих командою серверах.
  1. Спочатку протестуйте в staging — Перед видаленням пакетів на живому виробничому сервері протестуйте операцію в середовищі staging. Якщо вам потрібні ізольовані середовища для тестування, розгляньте можливість запуску окремого екземпляра VPS Hosting.
  1. Захистіть ваш сервер після очищення — Після видалення невикористовуваних пакетів перегляньте ваші відкриті порти та запущені сервіси. Поєднайте це з дійсним SSL Certificate щоб переконатися, що ваші залишилися сервіси належним чином захищені.
  1. Використовуйте apt-mark — Позначте пакети, які ви навмисне хочете зберегти, як «вручну встановлені» за допомогою sudo apt-mark manual <package> щоб запобігти тому, щоб autoremove випадково їх не видалив.

Усунення типових проблем

Видалення пакета не вдається через помилки залежностей

sudo apt install -f

Ця команда намагається виправити розірвані залежності та дозволяє продовжити видалення.

apt повідомляє “пакет не знайдено”

Назва пакета може відрізнятися від очікуваної. Спочатку пошукайте його:

apt search <keyword>
dpkg -l | grep <keyword>

Пакет виглядає встановленим, але не видаляється

Спробуйте примусове видалення за допомогою dpkg:

sudo dpkg --force-remove-reinstreq --remove <package_name>

Використовуйте це з обережністю — це обходить перевірку залежностей.

Видалення пакета Snap зависає

Якщо snap remove зависає, перевірте запущені служби snap:

sudo systemctl stop snap.<package>.daemon
sudo snap remove <package>

Висновок

Оволодіння видаленням пакетів в Ubuntu — це фундаментальна навичка для будь-якого системного адміністратора або розробника, який керує інфраструктурою на основі Linux. Незалежно від того, чи ви використовуєте apt remove для швидкого видалення, apt purge для ретельного очищення, apt autoremove для усунення залишених залежностей, dpkg для низькорівневого контролю, чи snap remove для контейнеризованих додатків — кожен інструмент має чітку мету та правильний контекст для використання.

Регулярна гігієна пакетів тримає ваш сервер стрункім, безпечним і працюючим на найкращому рівні. У поєднанні з надійною хостинг-інфраструктурою — незалежно від того, чи ви користуєтесь VPS з cPanel для легкого управління або голим Dedicated Server для максимального контролю — дисциплінований менеджмент пакетів забезпечує, що ваше середовище залишається стабільним, перевіряємим та готовим до виробництва.

Linux Windows Безпека
Linux Адміністрація
Linux Адміністрація