Snap-пакеты съедают память? Освобождаем место в Linux за 2 команды
Эти удобные пакеты незаметно превратили ваш жесткий диск в склад ненужных файлов. Snap-приложения — это здорово, пока вы не замечаете, что они съели гигабайты драгоценного пространства. А знали ли вы, что система по умолчанию хранит резервные копии каждой предыдущей версии?
Мы покажем вам, как быстро и безопасно избавиться от ненужных snap-пакетов и вернуть себе место. Вы узнаете не только базовую команду удаления, но и секретную настройку, которая предотвратит проблему в будущем. Как найти точное имя пакета, если вы его забыли? Как удалить только старые версии, не трогая рабочее приложение?
Всё это — простые команды в терминале, которые не отнимут у вас больше минуты. Мы разберем каждый шаг и предупредим об опасностях, чтобы вы случайно не сломали систему. Хватит мириться с захламленным диском! Переходите к статье и узнайте, как навести порядок в вашей системе раз и навсегда.
Пакеты программного обеспечения snap - это очень удобная вещь, поскольку они позволяют один раз подготовить установочный пакет, который потом можно развернуть в любом дистрибутиве поддерживающим эту технологию, а таких дистрибутивов довольно много. Для управления пакетами snap используется специальный пакетный менеджер.
Устанавливать пакеты надо с помощью него, соответственно и удалять тоже. В этой небольшой статье мы рассмотрим как удалить snap пакет в Linux.
Удаление snap пакета
Для удаления пакета вам надо знать его имя. Если вы устанавливали пакет давно и уже не помните как точно он назывался, есть несколько способов его узнать. Если пакет был найден на snapcraft.io, можно найти его там ещё раз и нажать кнопку Install, чтобы узнать команду установки и имя пакета:

Кроме того можно просто посмотреть все установленные пакеты, обычно их не очень много, затем уже из них выбрать то, что надо удалить:
sudo snap list

В данном случае пакет называется onenote-desktop. Для того чтобы его удалить достаточно выполнить такую команду:
sudo snap remove onenote-desktop
Это полностью удалит пакет и приложение из системы. Но есть ещё одна особенность, которая может быть вам интересной. По умолчанию пакетный менеджер snap сохраняет две предыдущие версии пакетов при обновлении. Поскольку один пакет занимает 500-700 мегабайт, это достаточно много и вы можете захотеть удалить эти пакеты. Можно попросить пакетный менеджер сохранять только одну резервную копию с помощью такой команды:
sudo snap set system refresh.retain=2
В параметры передается цифра 2. Это значит одна актуальная версия, а одна резервная. Меньше нельзя. Но если очень надо, то можно вручную удалить старые версии пакетов. Только хочу предупредить, что вы это делаете на свой страх и риск. Это может сломать систему и таким образом можно удалять только сами приложения, системные пакеты такие как core, snapd и другие трогать ни в коем случае нельзя. Сначала надо посмотреть список всех пакетов вместе с версиями, это можно сделать такой командой:
snap list --all

Обращать внимание надо на ревизии. В данном примере у меня есть две версии телеграмма, одна активная - 2398 и одна резервная (disabled) - 2391. Версию 2391 можно попробовать удалить. Для этого выполните такую команду:
snap remove telegram-desktop --revision=2391

После этого указанная ревизия будет удалена, место на диске освободится, но у вас останется рабочая версия Telegram. Хочу ещё раз предупредить, что системные пакеты трогать не стоит, это может вызвать проблемы.
Выводы
В этой статье мы рассмотрели как удалить snap пакет в Ubuntu и как удалить старые версии snap пакетов чтобы освободить память. Как видите, это очень просто.