Как управлять Snaps в Linux — часть 2

Как управлять Snaps в Linux — часть 2

Это вторая статья в серии статей о Snaps. В ней рассказывается, как запускать снапшоты из интерфейса командной строки, создавать и использовать псевдонимы снапшотов, взаимодействовать со службами моментальных снимков, а также создавать и управлять моментальными снапшотами snap.

Читайте также: Руководство по Snaps в Linux для начинающих — часть 1.

 

Запуск приложения из Snap

Snap может поддерживать одновременно одно приложение (или группу приложений), которое вы запускаете из графического интерфейса пользователя или с помощью соответствующей команды. По умолчанию все приложения, связанные со snap, устанавливаются в каталог /snap/bin/ в дистрибутивах на основе Debian и /var/lib/snapd/snap/bin/ для дистрибутивов на основе RHEL.

 

Вы можете просмотреть содержимое каталога снапшотов с помощью команды ls, как показано ниже:

$ ls /snap/bin/

 

Или же:

# ls /var/lib/snapd/snap/bin/

 

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

Как управлять Snaps в Linux — часть 2

$ /snap/bin/mailspring

 

Или же:

# /var/lib/snapd/snap/bin/mailspring

 

Чтобы вызывать приложение используя только его название без ввода полного пути, убедитесь, что /snap/bin/ или /var/lib/snapd/snap/bin/ находятся в переменной окружения PATH (их следует добавить по умолчанию).

Вы можете проверить переменную среды, выполнив:

# echo $PATH

 

Как управлять Snaps в Linux — часть 2

 

Если каталог /snap/bin/ или /var/lib/snapd/snap/bin/ находится в вашей переменной PATH, вы можете запустить приложение, просто набрав его название:

$ mailspring

 

Как управлять Snaps в Linux — часть 2

Чтобы увидеть команды, доступные для snap, выполните команду «snap info snap-name» и обратите внимание на раздел команд, как показано на следующем скриншоте:

# snap info mailspring

 

Как управлять Snaps в Linux — часть 2

 

Вы также можете найти абсолютный путь к приложению или команде, используя команду which:

# which mailspring

 

Как управлять Snaps в Linux — часть 2

 

Создание и использование псевдонимов Snap

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

Вы можете создать псевдоним для snap, используя команду alias:

# snap alias mailspring mls

 

Как управлять Snaps в Linux — часть 2

 

Чтобы составить список псевдонимов для snap, например для mailspring, выполните следующую команду. Отныне вы можете использовать псевдоним для запуска snap:

# snap aliases mailspring

 

Как управлять Snaps в Linux — часть 2

 

Чтобы удалить псевдоним для snap, используйте команду unalias:

# snap unalias mls

 

Как управлять Snaps в Linux — часть 2

 

Управление сервисами Snap

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

Вы можете проверить сервисы на предмет привязки к snap, в разделе сервисов в выводе команды «snap info snap-name». Например, для rocketchat-server:

# snap info rocketchat-

 

Как управлять Snaps в Linux — часть 2

 

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

# snap services rocketchat-server

 

Как управлять Snaps в Linux — часть 2

 

Чтобы остановить запуск службы, например rocketchat, используйте команду stop. Обратите внимание, что это действие не рекомендуется, так как ручная остановка служб snap может привести к неисправностям снапшота:

# snap stop rocketchat-server

 

Например, для запуска службы rocketchat используйте команду start:

# snap start rocketchat-server

 

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

# snap start rocketchat-server

 

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

snap enable rocketchat-server

 

Чтобы предотвратить автоматический запуск служб при следующей загрузке системы, используйте команду disable:

# snap disable rocketchat-server

 

Чтобы просмотреть журналы для служб, используйте команду log с опцией -f, которая позволит вам просматреть журналы событий в режиме реального времени:

 snap logs rocketchat-server

 

Или же:

# snap logs -f rocketchat-server

 

Как управлять Snaps в Linux — часть 2

 

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

 

 

Создание и управление мгновенной копией снапшота

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

Чтобы создать моментальный снимок вручную, используйте команду «snap save». Чтобы создать снапшот для mailspring, выполните следующую команду:

# snap save mailspring

 

Как управлять Snaps в Linux — часть 2

 

Если имя привязки не указано, snapd сгенерирует данные для всех установленных снапшотов (добавьте опцию —no-wait, чтобы запустить процесс в фоновом режиме и таким образом освободить терминал, что позволит запускать другие команды):

# snap save

 

Как управлять Snaps в Linux — часть 2

 

Чтобы просмотреть состояние всех снапшотов, используйте команду saved. Вы можете использовать флаг —id, чтобы показать состояние определенного снимка:

# snap saved

 

Или же:

# snap saved --id=2

 

Как управлять Snaps в Linux — часть 2

 

Вы можете проверить целостность снимка, используя команду check-snapshot и идентификатор снимка (идентификатор набора):

# snap check-snapshot 2

 

Как управлять Snaps в Linux — часть 2

 

Чтобы восстановить данные текущего пользователя, системы и конфигурации с соответствующими данными из определенного снимка, используйте команду restore, так же укажите идентификатор набора снапшота:

# snap restore 2

 

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

# snap forget 2

 

Или же:

# snap forget 2 mailspring 

 

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