Все, что вам нужно знать о Snap и Snap Store

Все, что вам нужно знать о Snap и Snap Store

Диспетчер пакетов - это набор интегрированных служб, которые упрощают установку, обновление, удаление и настройку пакетов / программ на компьютере.





Говоря конкретно об операционной системе Linux, вы можете выбирать из широкого спектра менеджеров пакетов, таких как APT, YUM, RPM и Pacman. Каждый из этих менеджеров пакетов имеет определенную особенность, которая отличает их друг от друга.





Однако относительно новый менеджер пакетов Snap стал жизнеспособной альтернативой традиционным менеджерам пакетов. Давайте рассмотрим Snap, его плюсы и минусы, а также то, как установить и использовать его в Linux.





Что такое Snap?

Snap - это кроссплатформенная система упаковки и развертывания, разработанная Canonical, создателями Ubuntu, для платформы Linux. Он совместим с большинством основных дистрибутивов Linux, включая Ubuntu, Debian, Arch Linux, Fedora, CentOS и Manjaro.

Snap состоит из трех основных компонентов:



1. Снимки

Как и любой другой менеджер пакетов, Snap также включает пакеты, называемые снимками. Эти пакеты, в отличие от своих аналогов из традиционных менеджеров пакетов, не зависят от зависимостей и просты в установке.

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





2. Snapd

Snapd (или демон оснастки) использует метаданные оснастки для настройки безопасной песочницы для приложений в вашей системе. Поскольку это демон, вся задача по обслуживанию и управлению средой привязки выполняется в фоновом режиме.

Можете ли вы подключить аэродромы к Android?

3. Snap Store

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





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

Резюмируем:

  • Щелчок : Используется для обозначения как формата пакета приложения, так и интерфейса командной строки.
  • Snapd : Демон Snap, который помогает управлять снимками и поддерживать их.
  • Магазин Snap : Дом для всех снимков; позволяет загружать свои собственные снимки, а также исследовать и устанавливать новые снимки.
  • Snapcraft : Фреймворк, который поможет вам создавать свои собственные снимки.

Snap: хорошее и плохое

С тех пор, как Canonical анонсировала Snap, в сообществе Linux возникли споры о том, является ли Snap правильным подходом для улучшения распространения пакетов в Linux. Это привело к появлению двух противоборствующих лагерей: один выступает за Snap, а другой - критикует его подход в долгосрочной перспективе.

Вот разбивка всего хорошего и плохого в Snap.

Преимущества использования Snap

  1. Snap поставляются в комплекте с зависимостями (библиотеками), которые облегчают мгновенный доступ к программе, поскольку вам больше не нужно вручную устанавливать недостающие зависимости, чтобы заставить ее работать в вашей системе.
  2. Каждая привязка работает сама по себе контейнерная песочница чтобы избежать вмешательства в другие системные пакеты. В результате, когда вы удаляете привязку, система удаляет все свои данные, включая зависимости, не затрагивая другие пакеты. Излишне говорить, что это также обеспечивает более безопасную среду, поскольку один пакет не может получить доступ к информации другого.
  3. Snap обновляет снимки автоматически через заданные интервалы. Следовательно, вы всегда запускаете последнюю версию программы в своей системе.
  4. Snap облегчает разработчикам распространение своего программного обеспечения напрямую среди пользователей, поэтому им не нужно ждать, пока их дистрибутив Linux выпустит их.
  5. В дополнение к предыдущему пункту, еще одно преимущество возложения на разработчиков ответственности за упаковку и распространение своего программного обеспечения заключается в том, что им не нужно создавать пакеты для конкретного дистрибутива, поскольку он поставляется в комплекте с необходимыми зависимостями.

Недостатки Snap

  1. Поскольку привязки поставляются вместе с зависимостями, они больше по размеру и занимают больше места на диске, чем их аналоги из других менеджеров пакетов.
  2. В результате связанных зависимостей снимки распространяются как сжатые образы файловой системы, и вам необходимо сначала смонтировать их перед установкой. Из-за этого привязки выполняются медленнее, чем традиционные пакеты.
  3. Хотя Snap позволяет разработчикам распространять свои снимки напрямую среди пользователей, конвейер распространения требует, чтобы они создали учетную запись в Canonical и разместили на ней свои снимки. Это противоречит истинной природе методологии с открытым исходным кодом, потому что, хотя программное обеспечение все еще является открытым исходным кодом, система управления пакетами контролируется какой-либо организацией.
  4. Еще одним недостатком разрешения разработчикам распространять пакеты является то, что пакеты не проходят строгих проверок и проверок со стороны сообщества и, следовательно, несут в себе риск содержать вредоносное ПО - как это было несколько лет назад.
  5. Из-за того, что серверная часть Snap по-прежнему имеет закрытый исходный код и контролируется Canonical, многие основные дистрибутивы Linux не поддерживают идею установки Snap в качестве диспетчера пакетов по умолчанию в своей системе.

Что касается риска вредоносных программ, Snap теперь использует автоматическое тестирование вредоносных программ для сканирования загруженных пользователями пакетов на наличие вредоносного кода перед их распространением в Snap Store.

По теме: что такое вредоносное ПО и как оно работает?

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

Поскольку snapd является важным компонентом Snap, это первое, что вам нужно установить в вашей системе. Однако, если вы используете какой-либо из следующих дистрибутивов Linux, в вашей системе уже предустановлен snapd: KDE Neon, Manjaro, Ubuntu (16.04 / 4 LTS и 20.04 LTS), Zorin OS.

В случае какого-либо другого дистрибутива Linux вам потребуется установить snapd вручную.

В Debian / Ubuntu:

sudo apt update
sudo apt install snapd

Установить snapd на CentOS и другие дистрибутивы на основе RHEL очень просто:

yum install epel-release
yum install snapd

Чтобы установить snapd в Fedora:

sudo dnf install snapd

В Arch Linux:

git clone https://aur.archlinux.org/snapd.git
cd snapd
makepkg -si

Связанный: Как установить и удалить пакеты в Arch Linux

Чтобы установить snapd в Manjaro Linux:

sudo pacman -S snapd

После установки вам необходимо включить система модуль, отвечающий за управление связью Snap в (некоторых) дистрибутивах Linux, прежде чем вы сможете использовать Snap.

Если вы используете дистрибутив Linux, отличный от Ubuntu и его производных, выполните следующую команду, чтобы включить модуль snapd systemd:

sudo systemctl enable --now snapd.socket

Наконец, перезапустите вашу систему с помощью:

sudo reboot

Подробнее: как управлять системными службами с помощью команды systemctl

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

Использование Snap очень похоже на использование других менеджеров пакетов. Поскольку вы установили snapd в своей системе на предыдущем шаге, теперь вы можете получить доступ к инструменту привязки и легко взаимодействовать со снимками из Snap Store.

В поисках привязки

С помощью Snap вы можете исследовать Snap Store и находить пакеты из разных категорий. Поэтому, если вы хотите искать снимки в определенной категории, используйте следующий синтаксис команды:

snap find package_category

Например:

snap find development

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

почему часы на моем компьютере выключены
snap info package_name

Например, чтобы извлечь информацию о привязке GIMP:

snap info gimp

Установка Snap

Наконец, когда вы найдете оснастку, которая соответствует вашим требованиям, вы можете установить ее, запустив:

sudo snap install package_name

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

Список установленных снимков

Чтобы получить список всех установленных снимков в вашей системе:

snap list

Просмотр информации о версии снимка

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

snap list package_name

Обновление снимков

Snap автоматически обновляет пакеты, установленные в вашей системе. Чтобы облегчить это, snapd по умолчанию настроен на проверку обновлений четыре раза в день. Однако при желании вы можете изменить частоту обновления по своему усмотрению.

Более того, при необходимости вы можете выполнить мгновенное обновление, запустив:

snap refresh

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

sudo snap refresh package_name

Когда вы это сделаете, Snap проверяет канал, отслеживаемый snap, на наличие более новой версии. Если доступно обновление, оно загружается и устанавливается автоматически.

Связанный: Как обновить одно или все приложения в Linux за секунды

Вернуться к ранее использованной версии снимка

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

sudo snap revert package_name

Отключение и включение привязки

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

Чтобы отключить привязку, введите:

sudo snap disable package_name

Если вы хотите включить его, просто запустите:

sudo snap enable package_name

Удаление привязки

Наконец, чтобы удалить неиспользуемые снимки в вашей системе, которые, вероятно, вам не понадобятся в будущем:

sudo snap remove package_name

Успешная установка Snap в Linux

Если вы до сих пор следовали руководству, у вас уже будет Snap и он будет работать в вашей системе Linux. И впоследствии вы сможете найти и загрузить большинство необходимых пакетов. Конечно, как и в случае с любым другим менеджером пакетов, вам может потребоваться некоторое время, чтобы освоиться со Snap. Но как только вы освоите его, вы сможете эффективно использовать его.

Тем не менее, у использования Snap есть как преимущества, так и недостатки, которые вы должны принять во внимание перед тем, как начать. Если вам нужна альтернатива Snap - та, которая хорошо сочетается с методологией бесплатного использования с открытым исходным кодом - проверьте Flatpaks, чтобы лучше понять, какой менеджер пакетов имеет лучшее хранилище для загрузки приложений Linux.

Делиться Делиться Твитнуть Эл. адрес Flathub против Snap Store: лучшие сайты для загрузки приложений Linux

Если вы хотите загрузить приложения для Linux, как сравнить Flathub и Snap Store? Мы противопоставляем их друг другу, чтобы выяснить это.

Читать далее
Похожие темы
  • Linux
  • Linux
  • Менеджеры пакетов
Об авторе Яш Вате(Опубликовано 21 статья)

Яш - штатный писатель в MUO по DIY, Linux, программированию и безопасности. Прежде чем найти свое увлечение писательством, он занимался разработкой для Интернета и iOS. Вы также можете найти его работы на TechPP, где он освещает другие темы. Помимо технологий, он любит говорить об астрономии, Формуле-1 и часах.

Ещё от Yash Wate

Подписывайтесь на нашу новостную рассылку

Подпишитесь на нашу рассылку, чтобы получать технические советы, обзоры, бесплатные электронные книги и эксклюзивные предложения!

Нажмите здесь, чтобы подписаться
Категория Linux