Как очистить Snap-пакеты и освободить дисковое пространство в Linux

Категория: линукс

Snap-пакеты удобны для установки, но они занимают много места на диске. Вот как очистить Snap-пакеты в Linux.

Одним из ключевых преимуществ дистрибутивов Linux являются их системы управления пакетами. Менеджеры пакетов в Linux позволяют автоматизировать установку программного обеспечения с помощью всего нескольких команд.

В отличие от других менеджеров пакетов, Snap обладает хорошей системой управления зависимостями. Но есть один недостаток: Snap-пакеты, как правило, занимают много места на диске. К счастью, очистить Snap-пакеты в Linux довольно просто.

Почему Snap-пакеты такие объемные? Управление зависимостями программного обеспечения давно было слабым местом для менеджеров пакетов Linux. Под зависимостями программного обеспечения понимается ситуация, когда определенное программное обеспечение зависит от других пакетов или библиотек, чтобы работать корректно.

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

Однако объединение всех зависимостей и основного программного обеспечения в один пакет приводит к тому, что такой пакет обычно бывает большего размера по сравнению с другими менеджерами пакетов, такими как APT, Pacman и др.

Еще одной причиной объемности Snap-пакетов является то, что Snap-пакеты предназначены для отката к предыдущей версии после обновления программного обеспечения. На вашем компьютере Linux сохраняются как текущие, так и предыдущие версии программ, что означает, что Snap-пакеты занимают много дискового пространства.

Вот как вы можете очистить Snap-пакеты и вернуть ценное дисковое пространство.

1. Удалите версии с возможностью отката Как было указано ранее, одной из уникальных особенностей Snap-пакетов является возможность легко откатываться к предыдущей версии любого установленного пакета с помощью Snap. Для этого, при обновлении Snap-пакета до новой версии, старое программное обеспечение все равно сохраняется на вашем компьютере.

Чтобы просмотреть список всех установленных Snap-пакетов включая их предыдущие версии, выполните следующую команду:

snap list --all

Как вы можете видеть из вышеуказанного вывода, некоторые пакеты перечислены дважды. Например, у пакета canonical-livepatch есть две версии: одна отключена, а другая активна. Отключенная версия - это предыдущая версия этого пакета, к которой можно вернуться. Она не используется, буквально просто занимает дисковое пространство.

Чтобы удалить предыдущие или отключенные версии Snap-пакетов, вы можете использовать номер Rev. В этом случае номер Rev отключенного пакета canonical-livepatch равен 229, поэтому вы можете выполнить следующую команду, чтобы удалить его:

sudo snap remove canonical-livepatch --revision=229

Не забудьте заменить имя пакета и номер ревизии в указанной выше команде.

2. Удалите неиспользуемые Snap-пакеты Время от времени вам следует периодически просматривать список всех установленных Snap-пакетов на вашем компьютере с помощью следующей команды:

sudo snap list

Из вывода выявите пакеты, которые вы не используете, и удалите их с помощью следующей команды:

sudo snap remove имя_пакета

Регулярно мониторьте, сколько дискового пространства занимают пакеты с помощью команды du. Snap-пакеты в большинстве случаев хранятся в вашей домашней директории в папке snap.

du -h ~/snap

3. Удалите неиспользуемые зависимости пакетов Хотя Snap хорошо справляется с управлением зависимостями, вызов состоит в том, что в некоторых случаях он устанавливает больше зависимостей, чем необходимо, что приводит к избыточному использованию дискового пространства пакетами.

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

На дистрибутивах Linux на основе Debian:

sudo apt autoremove

На дистрибутивах Linux на основе RHEL:

sudo dnf autoremove

На дистрибутивах Linux на основе Arch:

sudo pacman -Rns $(pacman -Qdtq)

Указанная команда, в зависимости от вашего дистрибутива, создаст древо зависимостей и удалит все зависимости пакетов, которые не нужны вашей системе.

4. Используйте другой менеджер пакетов, если это возможно Давайте будем честны, Snap-пакеты хороши, но если у вас ограниченное дисковое пространство, может быть разумно использовать альтернативный менеджер пакетов, такой как APT, Pacman или DNF.

Сначала удалите пакет с помощью команды sudo snap remove имя_пакета, а затем переустановите пакет с использованием APT или вашего менеджера пакетов по умолчанию.

На дистрибутивах Linux на основе Debian:

sudo apt install имя_пакета

На дистрибутивах Linux на основе RHEL:

sudo dnf install имя_пакета

На дистрибутивах Linux на основе Arch используйте:

sudo pacman -S имя_пакета

Не забудьте заменить имя_пакета в команде на фактическое имя пакета.

Следует отметить, что некоторые программные пакеты поставляются только в виде Snap-пакетов. Так что даже если в фоновом режиме используется менеджер пакетов по умолчанию, он все равно будет использовать Snap для их установки. Например, браузер Firefox в Ubuntu. Даже если вы используете APT, он будет устанавливать Snap-пакет Firefox.

Snap-пакеты отличны, но они объемные! Несмотря на их большой размер, Snap-пакеты обладают множеством преимуществ, таких как лучшее управление зависимостями и безопасность. Кроме того, Snap-пакеты совместимы со всеми основными дистрибутивами Linux.





Если вам нужен по настоящему хороший и профессиональный веб хостинг или свой высокопроизводительный сервер, то смело переходите по ссылке и заказывайте!

 

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *



Карта сайта
Copyright © 2023