Введение
Snap (или Snappy) — это система развертывания программ и управления пакетами, созданная Canonical. Эти пакеты чаще называют «снепами». Для работы с ними используется утилита «snapd», встроенная в ряд дистрибутивов Linux и позволяющая дистрибутивно-независимо развертывать программы на более высоком уровне.
Snap-пакеты полностью самодостаточны и работают на всех дистрибутивах Linux, позволяя безопасно распространять новые приложения и утилиты для систем облачных вычислений, серверов, десктопа и интернета вещей (Internet of Things). То есть snap-пакеты используются так же, как и команда apt-get
, но другим способом.
Snapd — это REST API демон, служащий для управления snap-пакетами. Пользователи взаимодействуют с ним с помощью клиента snap, который входит в тот же пакет. Вы можете установить любое приложение на Linux-десктоп, сервер, облако или устройство.
Вам понадобится
GNU/Linux дистрибутив u и некоторые базовые знания о работе в командной строке. В данном руководстве вы узнаете, как настроить и использовать snap-команды.
Установка системы Snap
Если у вас установлена Ubuntu 16.04 LTS (Xenial Xerus) или более поздние версии, включая Ubuntu 18.04 LTS (Bionic Beaver), то вам ничего не надо делать. Snap установлен по умолчанию и готов к работе. Соответственно, если у вас установлена более ранняя версия или системы Snap нет по каким-то другим причинам, то сначала установите ее, а затем приступайте к работе.
Установку можно осуществить с помощью следующих команд:
$ sudo apt update $ sudo apt install snapd
Работа с системой Snap
snapd
настроен и готов к использованию!
Поиск snap-приложений/пакетов
Чтобы найти доступные snap-приложения или пакеты выполните следующую команду:
$ snap find <search_text>
Например:
Установка snap-приложений
Вы можете установить любые приложения/пакеты, доступные в формате snap, выполнив следующую команду:
$ sudo snap install <package>
Также можно указать конкретный канал, из которого вы хотите установить приложение. Канал — это snap-концепция, которая позволяет переключаться между разными каналами snap-приложений.
$ sudo snap install --channel=edge <package>
Запуск установленных snap-пакетов
Установленные snap-пакеты доступны в формате bin/snap
и, как правило, добавлены в $PATH
. Это позволяет сделать снепы доступными через ввод команды. Snap-приложение можно запустить, выполнив следующую команду:
$ <package>
Также его можно запустить через команду:
$ bin/snap/<package>
Просмотр списка установленных приложений
Чтобы увидеть все установленные snap-пакеты, выполните следующую команду:
$ snap list
Обновление установленных snap-приложений/пакетов
Снепы обновляются автоматически, но вы можете также обновить их вручную с помощью следующей команды:
$ sudo snap refresh <package>
Чтобы посмотреть, какие обновления snap-пакетов готовы к установке, выполните следующую команду:
$ sudo snap refresh --list
Возврат к более ранней версии snap-приложений/пакетов
Если по какой-то причине вам не понравилось последнее обновление snap-пакета, вы можете вернуться к предыдущей версии с помощью следующей команды:
$ sudo snap revert <package>
Такая команда вернет необходимую версию snap-пакета и данные, соответствующие ПО. Если предыдущая версия snap-пакета получена из другого канала, она все равно установится, и канал останется прежним.
Удаление snap-приложений/пакетов
Если вы хотите избавиться от снепов, удалите snap-пакет с помощью следующей команды:
$ sudo snap remove <package>
Эта команда удалит приложение, все ее зависимости во время выполнения и связанные пользовательские данные. Если снеп запущен, команда сначала закроет его и затем удалит.
Включение и выключение snap-приложений/пакетов
Если вы хотите временно остановить работу снепа, просто отключите его и снова включите тогда, когда потребуется.
$ sudo snap disable<package>
<package>
disabled
$ sudo snap enable<package>
<package>
enabled
Список запущенных служб
Используйте snap services
, чтобы просмотреть все установленные и запущенные снепы.
$ sudo snap services lxd Service Startup Current lxd.daemon enabled active
Перезапуск, запуск и приостановление snap-служб
Службы можно перезапустить с помощью команды snap restart <snap name>
.
Все службы, необходимые для работы снепов, будут перезагружены по умолчанию:
$ sudo snap restart lxd
Restarted.
Чтобы запустить ранее остановленную службу, используйте следующую команду:
$ sudo snap start lxd.daemon Started.
Чтобы остановить запущенную службу, используйте следующую команду:
$ sudo snap stop lxd.daemon Stopped.
Конфигурации snap set и get
Некоторые снепы, например, работающие в фоновом режиме, выставляют параметры конфигурации, которые можно изменить.
Команды для просмотра и изменения этих параметров конфигураций — snap get
и snap set
.
Выставленные параметры конфигурации можно посмотреть с помощью установленного снепа. Введите команду snap get <package>
:
$ sudo snap get <package>
Чтобы изменить параметры конфигурации, задайте команду «snap set»:
$ sudo snap set <package> key=value
Скачивание и установка snap-приложений offline
Установить snap-приложения можно и без подключения к интернету. Для этого необходимо скачать файлы snap-приложений/пакетов, задав следующую команду:
snap download <package>
Эта команда загрузит .assert и .snap файл. Скопируйте их на другую Linux/Ubuntu систему, которая не имеет подключения к интернету. Затем установите загруженный файл с помощью следующей команды:
snap ack <package.assert>
snap install <package.snap>
Заключение
Хотя данная система все еще разрабатывается, и доступно не так много snap-приложений/пакетов, тем не менее, она является одной из лучших систем управления ПО. Snap становится все популярнее, особенно благодаря таким настойчивым методам Canonical.
Перевод статьи Oyetoke Tobi Emmanuel: How to Install and Use Snap on Ubuntu 18.04