Руководство по Snaps в Linux для начинающих — часть 1

Пакетные менеджеры

В последние несколько лет сообщество Linux было наделено некоторыми замечательными достижениями в области управления пакетами в системах Linux, особенно когда речь идет об универсальном или перекрестном распространении программного обеспечения. Одним из таких достижений является формат пакета Snap, разработанный Canonical, создателем популярной Ubuntu Linux.

 

Что такое Snap Packages?

Snaps являются кросс-дистрибутивными, независимыми и простыми в установке приложениями, упакованными со всеми их зависимостями для запуска во всех основных дистрибутивах Linux. Начиная с одной сборки, приложение будет запускаться во всех поддерживаемых дистрибутивах Linux на десктопе, в облаке и IoT. Поддерживаемые дистрибутивы включают Ubuntu, Debian, Fedora, Arch Linux, Manjaro и CentOS/RHEL.

Snaps безопасны — они ограничены и не ставят под угрозу всю систему. Они работают под разными уровнями содержания (то есть степень изоляции от базовой системы и друг от друга). Более того, каждый Snap имеет интерфейс, тщательно выбранный создателем на основе требований, чтобы обеспечить доступ к определенным системным ресурсам вне их ограничения, таким как доступ к сети, доступ к рабочему столу и т. д.

Еще одна важная концепция в экосистеме Snap — каналы. Канал определяет, какая версия Snap установлена ​​и отслеживается для обновлений, она состоит из треков, уровней риска и ветвей.

Основными компонентами системы управления пакетами Snaps являются:

  • snapd — фоновая служба, которая управляет вашими snaps в системе Linux
  • snap — формат пакета приложения и инструмент интерфейса командной строки, используемые для установки и удаления привязок и выполнения многих других действий в экосистеме
  • snapcraft — фреймворк и мощный инструмент командной строки для создания snaps
  • snap store — это место, где разработчики могут делиться своими snaps, а пользователи Linux ищут и устанавливают их.

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

 

Как установить Snapd в Linux

Как описано выше, демон snapd — это фоновая служба, которая управляет и поддерживает вашу среду привязки в системе Linux, реализуя политики ограничения и управляя интерфейсами, которые позволяют snaps получать доступ к определенным системным ресурсам. Он также предоставляет команду привязки и служит многим другим целям.

Чтобы установить пакет snapd в вашей системе, выполните соответствующую команду для вашего дистрибутива Linux.

------------ [On Debian and Ubuntu] ------------
$ sudo apt update
$ sudo apt install snapd

------------ [On Fedora Linux] ------------
# dnf install snapd

------------ [On CentOS and RHEL] ------------
# yum install epel-release
# yum install snapd

------------ [On openSUSE - replace openSUSE_Leap_15.0 with the version] ------------
$ sudo zypper addrepo --refresh https://download.opensuse.org/repositories/system:/snappy/openSUSE_Leap_15.0 snappy
$ sudo zypper --gpg-auto-import-keys refresh
$ sudo zypper dup --from snappy
$ sudo zypper install snapd

------------ [On Manjaro Linux] ------------
# pacman -S snapd

------------ [On Arch Linux] ------------
# git clone https://aur.archlinux.org/snapd.git
# cd snapd
# makepkg -si

 

 

После установки snapd в вашей системе, включите системный модуль, который управляет основным сокетом связи snap, используя команды systemctl следующим образом (в Ubuntu и его производных это должно запускаться автоматически установщиком пакета).

$ sudo systemctl enable --now snapd.socket

 

 

Обратите внимание, что вы не можете запустить команду snap, если не запущен snapd.socket. Выполните следующие команды, чтобы проверить, активен ли он и включен ли автоматический запуск при загрузке системы.

$ sudo systemctl is-active snapd.socket
$ sudo systemctl status snapd.socket
$ sudo systemctl is-enabled snapd.socket

 

 

check-if-snapd-socket-is-running

 

 

Затем включите поддержку классической привязки, создав символическую ссылку между /var/lib/snapd/snap и /snap следующим образом.

$ sudo ln -s /var/lib/snapd/snap /snap

 

 

Чтобы проверить версию средства командной строки snapd и snap, установленного в вашей системе, выполните следующую команду.

$ snap version 

 

 

check-snapd-and-snap-version

 

 

Как установить Snaps в Linux

Команда привязки позволяет устанавливать, настраивать, обновлять и удалять привязки и взаимодействовать с более крупной экосистемой привязок. Перед установкой Snaps вы можете проверить, существует ли она в хранилище. Например, если приложение относится к категории «чат-серверы» или «медиаплееры», вы можете запустить эти команды для поиска, чтобы запросить в хранилище доступные пакеты в стабильном канале.

$ snap find "chat servers"
$ snap find "media players"

 

 

find-snaps

 

 

Чтобы показать подробную информацию о привязке, например, rocketchat-server, вы можете указать его имя или путь. Обратите внимание, что имена ищутся как в snap store, так и в установленных snaps.

$ snap info rocketchat-server

 

 

 

 

Чтобы установить Snaps в вашей системе, например, rocketchat-server, выполните следующую команду. Если опции не предоставлены, устанавливается привязка, отслеживающая «стабильный» канал со строгим ограничением безопасности.

$ sudo snap install rocketchat-server

 

 

rocketchat-server-snap-installed-successfully

 

 

Вы можете выбрать установку из другого канала: пограничного, бета-версии или кандидата, используя параметры —edge, —beta или —candidate соответственно. Или используйте параметр —channel и укажите канал, с которого вы хотите установить.

$ sudo snap install --edge rocketchat-server
$ sudo snap install --beta rocketchat-server
$ sudo snap install --candidate rocketchat-server

 

 

Управление Snaps в Linux

В этом разделе мы узнаем, как управлять Snaps в системе Linux.

 

Просмотр установленных snap пакетов

Чтобы отобразить сводку пакетов, установленных в вашей системе, используйте следующую команду.

$ snap list

 

 

list-installed-snaps

 

 

Чтобы просмотреть текущую версию используемых Snaps, укажите его имя. Вы также можете перечислить все доступные ревизии, добавив опцию —all.

$ snap list mailspring
OR
$ snap list --all mailspring

 

 

list-all-versions-of-a-snap

 

 

Обновление и возврат Snaps

Вы можете обновить указанную привязку или все привязки в системе, если они не указаны, как указано ниже. Команда refresh проверяет канал, отслеживаемый привязкой, и загружает и устанавливает более новую версию привязки, если она доступна.

$ sudo snap refresh mailspring
OR
$ sudo snap refresh #update all snaps on the local system

 

 

refresh-a-snap

 

 

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

$ sudo snap revert mailspring

 

 

revert-a-snap-to-older-version

 

 

Теперь, когда вы проверяете все ревизии mailspring, последняя ревизия отключается, ранее использовавшаяся ревизия становится активной.

$ snap list --all mailspring

 

 

snap-reverted-to-older-version

 

 

Отключение/включение и удаление Snaps

Вы можете отключить Snaps, если не хотите ее использовать. Если этот параметр отключен, двоичные файлы и службы snaps больше не будут доступны, однако все данные по-прежнему будут там.

$ sudo snap disable mailspring

 

Если вам нужно снова использовать пакет, вы можете включить ее снова.

$ sudo snap enable mailspring

 

Чтобы полностью удалить пакет из вашей системы, используйте команду удаления. По умолчанию все ревизии оснастки удаляются.

$ sudo snap remove mailspring

 

 

Чтобы удалить конкретную ревизию, используйте параметр —revision следующим образом.

$ sudo snap remove --revision=482 mailspring

 

Важно отметить, что при удалении snaps его данные (например, данные о внутреннем пользователе, системе и конфигурации) сохраняются с помощью snapd (версия 2.39 и выше) в качестве snaps и сохраняются в системе в течение 31 дня. Если вы переустановите snaps в течение 31 дня, вы можете восстановить данные.

 

Вывод

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

 

 

Спасибо за уделенное время на прочтение статьи!

Если возникли вопросы, задавайте их в комментариях.

Подписывайтесь на обновления нашего блога и оставайтесь в курсе новостей мира инфокоммуникаций!

Чтобы знать больше и выделяться знаниями среди толпы IT-шников, записывайтесь на курсы Ciscoкурсы по кибербезопасности,  полный курс по кибербезопасностикурсы DevNet (программируемые сети) от Академии Ciscoкурсы Linux от Linux Professional Institute на платформе SEDICOMM University (Университет СЭДИКОМ.

Курсы Cisco и Linux с трудоустройством!

Спешите подать заявку! Осталось пару мест. Группы стартуют 22 июля, а следующая 19 августа, 23 сентября, 21 октября, 25 ноября, 16 декабря, 20 января, 24 февраля.
Что Вы получите?
  • Поможем стать экспертом в сетевом администрировании и получить международные сертификаты Cisco CCNA Routing & Switching или Linux LPI.
  • Предлагаем проверенную программу и учебник экспертов из Cisco Networking Academy и Linux Professional Institute, сертифицированных инструкторов и личного куратора.
  • Поможем с трудоустройством и сделать карьеру. 100% наших выпускников трудоустраиваются.
Как проходит обучение?
  • Проводим вечерние онлайн-лекции на нашей платформе или обучайтесь очно на базе Киевского офиса.
  • Спросим у вас об удобном времени для практик и подстроимся: понимаем, что времени учиться мало.
  • Если хотите индивидуальный график — обсудим и осуществим.
  • Выставим четкие дедлайны для самоорганизации. Личный куратор будет на связи, чтобы ответить на вопросы, проконсультировать и мотивировать придерживаться сроков сдачи экзаменов.
А еще поможем Вам:
  • отредактировать резюме;
  • подготовиться к техническим интервью;
  • подготовиться к конкурсу на понравившуюся вакансию;
  • устроим на работу в Cisco по программе Cisco Incubator, New Graduate и Experienced. Наши студенты, которые уже работают там: жмите на #НашиВCisco Вконтакте, #НашиВCisco Facebook.
Чтобы учиться на курсах Cisco CCNA Routing & Switching и Linux LPI, подайте заявку или получите бесплатную консультацию.
Пакетные менеджеры

Больше похожих постов

How-to-Manage-Snaps-in-Linux-–-Part-2

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

298
0
Это вторая статья в серии статей о Snaps. В ней рассказывается, как запускать снапшоты из интерфейса командной строки, создавать и…

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

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

Заполните поле
Заполните поле
Пожалуйста, введите корректный адрес email.
Вы должны согласиться с условиями для продолжения

Most Viewed Posts
Меню