Способы оплаты Abuse

Как использовать Snap в Ubuntu 24.04

30.06.2025, 18:54

В Ubuntu 24.04 система установки программ через Snap по-прежнему занимает важное место. Этот формат позволяет легко ставить приложения, управлять их обновлениями, переключаться между версиями и при необходимости полностью отказаться от Snap. В этом материале расскажем, как всё это работает — просто и по делу.

Что такое Snap и зачем он нужен

Snap — это универсальный формат пакетов, разработанный Canonical. Каждый такой пакет включает всё, что нужно для работы программы: исполняемые файлы, библиотеки, настройки и прочее. Благодаря этому приложение можно запустить на любом дистрибутиве Linux, не заботясь о зависимости и конфликтах.

Всё управление берёт на себя специальная служба — snapd. Она отвечает за установку, обновление, запуск и удаление пакетов. Сами Snap-файлы (с расширением .snap) представляют собой архивы, которые монтируются в систему как только для чтения.

Данные пользователя при этом хранятся отдельно — в папке ~/snap/<app-name>/. Это удобно: настройки и файлы не теряются даже при переустановке приложения.

Правда, за универсальность приходится платить: Snap-приложения обычно весят больше, потому что включают всё необходимое, даже если это уже есть в системе. А ещё Snap хранит предыдущую версию на случай отката — это тоже занимает место.
Установка Snap в Ubuntu 24.04

В большинстве случаев Snap в Ubuntu 24.04 уже предустановлен. Но если вы работаете с минимальной версией системы, в контейнере или собирали систему вручную — возможно, snapd придётся установить отдельно.

Проверьте, установлен ли Snap:

snap version

Если система не узнаёт эту команду — поставьте Snap вручную:

sudo apt update
sudo apt install snapd

После установки стоит убедиться, что служба работает:

sudo systemctl start snapd
sudo systemctl enable snapd
systemctl status snapd
systemctl status snapd.socket

Если всё в порядке, можно начинать пользоваться Snap.

Как ставить приложения через Snap

Самая простая команда для установки:

sudo snap install <package-name>

Чтобы найти нужную программу:

snap find <keyword>

Например, чтобы установить VLC:

sudo snap install vlc

А вот установка Visual Studio Code требует чуть больше:

sudo snap install code --classic

Флаг --classic нужен для тех приложений, которым необходим доступ к системным ресурсам, путям и внешним процессам. Без него такие программы просто не запустятся.

Как управлять установленными приложениями

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

snap list

Snap сам обновляет приложения в фоне. Если хотите обновить всё вручную:

sudo snap refresh

Можно настроить, когда именно разрешены обновления:

sudo snap set system refresh.timer=mon,wed,fri,6:00-8:00

Или отложить установку на неделю:

sudo snap refresh --hold=168h

Если после обновления что-то пошло не так — можно откатиться:

sudo snap revert <package-name>

Удаление приложения:

sudo snap remove <package-name>

Для полной очистки (включая настройки пользователя):

sudo snap remove --purge <package-name>

Что делать, если Snap не работает

Иногда служба snapd может завершиться с ошибкой. Проверяем:

systemctl status snapd

Если нужно перезапустить:

sudo systemctl restart snapd

Также проверьте, работает ли системный сокет:

systemctl status snapd.socket

Если он отключён, включаем:

sudo systemctl enable --now snapd.socket

Каналы обновлений: stable, beta, edge

У каждого Snap-пакета есть каналы:

— stable — стабильная версия (по умолчанию),
— candidate — почти готовая к релизу,
— beta — тестовая,
— edge — экспериментальная, самая свежая.

Чтобы установить приложение из конкретного канала:

sudo snap install <пакет> --channel=beta

А чтобы переключиться на другой канал:

sudo snap refresh <пакет> --channel=stable

Как полностью отключить Snap

Если вы решили отказаться от Snap, удалите все установленные приложения:

snap list
sudo snap remove --purge <package-name>

Затем удалите сам Snap:

sudo apt purge snapd
sudo rm -rf ~/snap /snap /var/snap /var/lib/snapd

Конфликты с deb-пакетами

Иногда одно и то же приложение может быть установлено в двух вариантах: .deb и Snap. Это может вызывать путаницу и даже конфликты.

На что обратить внимание:
— Приложения могут дублироваться в меню;
— Поведение может отличаться (Snap работает в изоляции);
— По умолчанию система запускает Snap-версию, если она есть.

Чтобы запустить именно нужную версию, указывайте путь явно:

/usr/bin/code   # deb-версия
/snap/bin/code  # snap-версия

Если не хотите путаницы — придерживайтесь одного формата. Особенно это важно в серверных и корпоративных системах, где стабильность — на первом месте.