Диспетчер пакетов - это набор интегрированных служб, которые упрощают установку, обновление, удаление и настройку пакетов / программ на компьютере.
Говоря конкретно об операционной системе Linux, вы можете выбирать из широкого спектра менеджеров пакетов, таких как APT, YUM, RPM и Pacman. Каждый из этих менеджеров пакетов имеет определенную особенность, которая отличает их друг от друга.
Однако относительно новый менеджер пакетов Snap стал жизнеспособной альтернативой традиционным менеджерам пакетов. Давайте рассмотрим Snap, его плюсы и минусы, а также то, как установить и использовать его в Linux.
Что такое Snap?
Snap - это кроссплатформенная система упаковки и развертывания, разработанная Canonical, создателями Ubuntu, для платформы Linux. Он совместим с большинством основных дистрибутивов Linux, включая Ubuntu, Debian, Arch Linux, Fedora, CentOS и Manjaro.
Snap состоит из трех основных компонентов:
1. Snaps
Как и любой другой менеджер пакетов, Snap также включает пакеты, называемые снимками. Эти пакеты, в отличие от своих аналогов из традиционных менеджеров пакетов, не зависят от зависимостей и просты в установке.
Снимки заканчиваются на .щелчок расширение, которое по сути представляет собой сжатую файловую систему, которая использует формат SquashFS и содержит весь модуль пакета, включая приложение, его зависимые библиотеки и дополнительные метаданные.
2. Snapd
Snapd (или демон оснастки) использует метаданные оснастки для настройки безопасной песочницы для приложений в вашей системе. Поскольку это демон, вся задача по обслуживанию и управлению средой привязки выполняется в фоновом режиме.
3. Магазин Snap
Снапсы находятся в Snap Store, и вы можете изучать и загружать их так же, как и другие менеджеры пакетов. Кроме того, вы также получаете возможность публиковать собственные пакеты моментальных снимков непосредственно в Snap Store, что невозможно при использовании традиционных менеджеров пакетов.
Помимо этих элементов, Snap также имеет еще один важный компонент, известный как канал. Канал отвечает за определение установленной версии оснастки и отслеживание обновлений в вашей системе. В результате, когда вы устанавливаете или обновляете снимки, вы получаете возможность указать канал, который вы хотите использовать для каждой из этих операций.
Резюмируем:
- Щелчок: Используется для обозначения как формата пакета приложения, так и интерфейса командной строки.
- Snapd: Демон Snap, который помогает управлять снимками и поддерживать их.
- Магазин Snap: Дом для всех снимков; позволяет загружать свои собственные снимки, а также исследовать и устанавливать новые снимки.
- Snapcraft: Фреймворк, который поможет вам создавать свои собственные снимки.
Snap: хорошее и плохое
С тех пор, как Canonical анонсировала Snap, в сообществе Linux возникла ажиотаж по поводу того, является ли Snap правильным подходом для улучшения распространения пакетов в Linux. Это привело к появлению двух противоборствующих лагерей: один выступает за Snap, а другой - критикует его подход в долгосрочной перспективе.
Вот разбивка всего хорошего и плохого в Snap.
Преимущества использования Snap
- Snap поставляются в комплекте с зависимостями (библиотеками), которые облегчают мгновенный доступ к программе, поскольку вам больше не нужно вручную устанавливать недостающие зависимости, чтобы заставить ее работать в вашей системе.
- Каждая привязка работает сама по себе контейнерная песочница чтобы избежать вмешательства в другие системные пакеты. В результате, когда вы удаляете привязку, система удаляет все свои данные, включая зависимости, не затрагивая другие пакеты. Излишне говорить, что это также обеспечивает более безопасную среду, поскольку один пакет не может получить доступ к информации другого.
- Snap обновляет снимки автоматически через заданные интервалы. Следовательно, вы всегда запускаете последнюю версию программы в своей системе.
- Snap облегчает разработчикам распространение своего программного обеспечения напрямую среди пользователей, поэтому им не нужно ждать, пока их дистрибутив Linux выпустит их.
- Добавляя к предыдущему пункту, еще одно преимущество - возложить на разработчиков ответственность за упаковку и распространение своих программное обеспечение заключается в том, что им не нужно создавать пакеты для конкретного дистрибутива, поскольку оно поставляется в комплекте с необходимыми зависимости.
Недостатки Snap
- Поскольку привязки поставляются вместе с зависимостями, они больше по размеру и занимают больше места на диске, чем их аналоги из других менеджеров пакетов.
- В результате связанных зависимостей снимки распространяются как сжатые образы файловой системы, и вам необходимо сначала смонтировать их перед установкой. Из-за этого привязки выполняются медленнее, чем традиционные пакеты.
- Хотя Snap позволяет разработчикам распространять свои снимки напрямую среди пользователей, конвейер распространения требует, чтобы они создали учетную запись в Canonical и разместили на ней свои снимки. Это противоречит истинной природе методологии с открытым исходным кодом, потому что, хотя программное обеспечение все еще является открытым исходным кодом, система управления пакетами контролируется какой-либо организацией.
- Еще одним недостатком разрешения разработчикам распространять пакеты является то, что пакеты не проходят через строгие проверки и обзоры со стороны сообщества и, следовательно, несут риск содержания вредоносных программ, как было замечено в некоторых лет назад.
- Из-за того, что серверная часть 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 установить snapd
Установить snapd на CentOS и другие дистрибутивы на основе RHEL очень просто:
yum install epel-release
ням установить snapd
Чтобы установить snapd в Fedora:
sudo dnf установить snapd
В Arch Linux:
git clone https://aur.archlinux.org/snapd.git
cd snapd
makepkg -si
Связанный: Как установить и удалить пакеты в Arch Linux
Чтобы установить snapd в Manjaro Linux:
sudo pacman -S snapd
После установки вам необходимо включить systemd модуль, отвечающий за управление связью Snap в (некоторых) дистрибутивах Linux, прежде чем вы сможете использовать Snap.
Если вы используете дистрибутив Linux, отличный от Ubuntu и его производных, выполните следующую команду, чтобы включить модуль snapd systemd:
sudo systemctl enable --now snapd.socket
Наконец, перезапустите вашу систему с помощью:
перезагрузка sudo
Учить больше: Как управлять системными службами с помощью команды systemctl
Как использовать Snap в Linux
Использование Snap очень похоже на использование других менеджеров пакетов. Поскольку вы установили snapd в своей системе на предыдущем шаге, теперь вы можете получить доступ к инструменту привязки и легко взаимодействовать со снимками из Snap Store.
В поисках привязки
С помощью Snap вы можете исследовать Snap Store и находить пакеты из разных категорий. Поэтому, если вы хотите искать снимки в определенной категории, используйте следующий синтаксис команды:
быстро найти package_category
Например:
разработка Snap find
Если вы наткнулись на пакет и хотите узнать о нем больше, используйте Информация с помощью команды по умолчанию.
привязка информация имя_пакета
Например, чтобы извлечь информацию о привязке GIMP:
привязка информация gimp
Установка Snap
Наконец, когда вы найдете оснастку, которая соответствует вашим требованиям, вы можете установить ее, запустив:
sudo snap install имя_пакета
После установки вы можете найти программу в Приложения меню вашего дистрибутива Linux. Затем вы можете запустить его прямо из меню или через терминал, введя его имя.
Список установленных снимков
Чтобы получить список всех установленных снимков в вашей системе:
список привязок
Просмотр информации о версии снимка
Чтобы узнать текущую версию снапа, запустите:
список привязок имя_пакета
Обновление снимков
Snap автоматически обновляет пакеты, установленные в вашей системе. Чтобы облегчить это, snapd по умолчанию настроен на проверку обновлений четыре раза в день. Однако при желании вы можете изменить частоту обновления по своему усмотрению.
Более того, при необходимости вы можете выполнить мгновенное обновление, запустив:
мгновенное обновление
Точно так же вы также можете быстро проверить наличие обновлений с помощью:
sudo snap обновить имя_пакета
Когда вы это сделаете, Snap проверяет канал, отслеживаемый snap, на наличие более новой версии. Если доступно обновление, оно загружается и устанавливается автоматически.
Связанный: Как обновить одно или все приложения в Linux за секунды
Вернуться к ранее использованной версии снимка
Если у вас возникли проблемы после обновления снапа, вы можете вернуться к его предыдущей версии, запустив:
sudo snap revert имя_пакета
Отключение и включение привязки
Если вы не используете оснастку, но она может понадобиться в будущем, вы можете временно отключить ее и снова включить при необходимости. Таким образом, вам не придется выполнять утомительный процесс удаления и повторной установки оснастки.
Чтобы отключить привязку, введите:
sudo snap отключить имя_пакета
Если вы хотите включить его, просто запустите:
sudo snap enable имя_пакета
Удаление привязки
Наконец, чтобы удалить неиспользуемые снимки в вашей системе, которые, вероятно, вам не понадобятся в будущем:
sudo snap удалить имя_пакета
Успешная установка Snap в Linux
Если вы до сих пор следовали руководству, у вас уже будет Snap и он будет работать в вашей системе Linux. И впоследствии вы сможете найти и загрузить большинство необходимых пакетов. Конечно, как и в случае с любым другим менеджером пакетов, вам может потребоваться некоторое время, чтобы освоиться со Snap. Но как только вы освоите его, вы сможете эффективно использовать его.
Тем не менее, у использования Snap есть как преимущества, так и недостатки, которые вы должны принять во внимание перед тем, как начать. Если вам нужна альтернатива Snapone, которая хорошо сочетается с бесплатной методологией с открытым исходным кодом, проверьте из Flatpaks, чтобы лучше понять, какой менеджер пакетов имеет лучшее хранилище для загрузки Linux Программы.
Если вы хотите загрузить приложения для Linux, как сравнить Flathub и Snap Store? Мы противопоставляем их друг другу, чтобы выяснить это.
Читать далее
- Linux
- Linux
- Менеджеры пакетов
Яш - штатный писатель в MUO по DIY, Linux, программированию и безопасности. Прежде чем найти свое увлечение писательством, он занимался разработкой для Интернета и iOS. Вы также можете найти его работы на TechPP, где он освещает другие темы. Помимо технологий, он любит говорить об астрономии, Формуле-1 и часах.
Подписывайтесь на нашу новостную рассылку
Подпишитесь на нашу рассылку, чтобы получать технические советы, обзоры, бесплатные электронные книги и эксклюзивные предложения!
Еще один шаг…!
Пожалуйста, подтвердите свой адрес электронной почты в электронном письме, которое мы вам только что отправили.