- Ubuntu snap – что это такое и с чем его едят?
- Введение в снапы
- compizomania
- Страницы
- 05 августа 2018
- Что такое snap, и в чем его преимущества
- Установка и использование Snap-пакетов в Ubuntu 18.04
- Введение
- Вам понадобится
- Установка системы Snap
- Работа с системой Snap
- Поиск snap-приложений/пакетов
- Установка snap-приложений
- Запуск установленных snap-пакетов
- Просмотр списка установленных приложений
- Обновление установленных snap-приложений/пакетов
- Возврат к более ранней версии snap-приложений/пакетов
- Удаление snap-приложений/пакетов
- Включение и выключение snap-приложений/пакетов
- Список запущенных служб
- Перезапуск, запуск и приостановление snap-служб
- Конфигурации snap set и get
- Скачивание и установка snap-приложений offline
- Заключение
Ubuntu snap – что это такое и с чем его едят?
Относительно недавно в Ubuntu появился новый инструмент — снапы (от англ. snap), но что это такое и как их использовать знают далеко не все пользователи.
Введение в снапы
Представим вполне реальную ситуацию. Пользователь устанавливает самую новую версию Ubuntu, пусть это будет версия 16.04 — именно в ней и появились впервые снапы по умолчанию. По определенным причинам пользователь отключает обновления. Такая ситуация не надумана. Мы все знаем, что после обновления системы Ubuntu, к сожалению, не всегда работает корректно и даже не всегда загружается.
Пользователя все устраивает и он спокойно себе использует дистрибутив некоторое время. Через несколько лет пользователь хочет установить новую версию приложения, например, браузера и обнаруживает, что он не может этого сделать.
Почему? Да потому что его дистрибутив устарел. для установки приложения нужны новые версии библиотек, а для их установки нужно обновить уже установленные пакеты. Иногда процесс настолько масштабный, что приходится обновлять дистрибутив. А ведь мы знаем, что пользователь не хочет этого делать по ряду причин, да и это опасно: система может быть разрушена нарушения связей между программами и библиотеками.
Вторая ситуация. Пусть у пользователя самая новая версия дистрибутива (на данный момент — это 18.10) — чтобы никто не упрекнул нас в надуманности ситуации. Мы знаем, что у традиционных пакетов есть зависимости и конфликты. Иногда нельзя установить то или иное приложение, поскольку его библиотеки конфликтуют с библиотеками уже установленными в системе.
Обе проблемы настолько обширны, что разработчики Ubuntu изобрели снапы. Все мы знакомы с понятием пакета. Пакет содержит саму программу, а также различные вспомогательные файлы — документацию, ресурсы (картинки, например), файлы локализации, сценарии Но пакет не содержит всего, что нужно для работы этой программы в системе. Например, если программе для работы нужна библиотека GL, то просто в пакете «прописывается» зависимость — нужно установить пакет для работы этого пакета. При установке программы менеджер пакетов (apt) производит разрешение зависимостей — устанавливает все необходимые для работы этой программы пакеты.
С одной стороны, такой подход позволяет экономить место на диске. Ведь одну и ту же библиотеку не нужно устанавливать несколько раз. С другой стороны, это порождает уже описанные ранее проблемы.
Снап — это решение всей головной боли, как пользователя, так и разработчика приложения. Снап можно считать таким пакетом, в котором содержится не только программа, но и все необходимые для ее работы библиотеки. Получается, что все, что нужно для работы программы содержится в снапе.
Источник
compizomania
Азбука в Linux для начинающих и не только. Я знаю только то, что ничего не знаю, но другие не знают и этого. Сократ
Страницы
05 августа 2018
Что такое snap, и в чем его преимущества
Snap — это универсальный пакет, созданный Canonical (Ubuntu), который доступен для каждой операционной системы Linux, поддерживающей snapd: Ubuntu, Debian, Linux Mint, Gentoo, Arch Linux, Fedora, OpenWrt, OpenEmbedded, Yocto, openSUSE, Manjaro, Solus.
Более того, snap будет хорошо работать в любом дистрибутиве Linux без каких-либо дополнительных модификаций, так как он уже содержит все необходимые зависимости.
Snap-пакеты являются самодостаточными, в отличие от традиционных подходов к управлению пакетами Linux, такими как APT или YUM, которые требуют специальной адаптации для каждого дистрибутива и добавляют задержку между разработкой приложений и ее развертыванием для конечных пользователей.
Менеджером snap-пакетов является служба snapd (d-demon), которая работает в фоновом режиме.
Прежде чем начать установку snap-пакетов в дистрибутивах Linux, необходимо установить Менеджер пакетов snapd.
В каждом из дистрибутивов Linux, snapd устанавливается по-своему.
Инструкцию по установке snapd для каждого дистрибутива можно найти на официальной странице https://docs.snapcraft.io/core/install.
Инструкция по установке snapd:
После того как snapd установлен, вы можете устанавливать приложения посредством snap-пакетов.
Устанавливать snap-пакеты можно как из магазина Snap Store, так и посредством терминала.
1. Установка из магазина Snap Store.
Переходите по ссылке https://snapcraft.io/store в магазин Snap Store и выбираете программу, кликом на значке.
Нажимаете кнопку Install (Установить).
Копируете установочную терминальную команду на выполнение.
И выполняете её в терминале.
По окончании установки программы терминал известит вас об этом: ‘opera-software’ installed (‘приложение opera’ установлено).
Примечание. Терминальная команда sudo snap install название программы является универсальной для любого из перечисленных выше дистрибутивов Linux.
2. Установка snsp-пакетов непосредственно из терминала, без захода в магазин Snap Store.
Откройте терминал и выполните команду:
find в переводе с английского означает найти.
После выполнения этой команды, терминал выводит перечень/список snap-пакетов.
Если в команде указана конкретная программа, терминал вам выдаст возможный перечень версий программы для установки.
snap find opera
Скопируйте в установочную команду название выбранной версии и выполните команду в терминале. Пример:
sudo snap install —beta opera-beta
Примечание. Команда snap install opera-beta не перезаписывает установленную стабильную версию программы, они будут работать автономно. В системном меню вы найдёте обе программы.
Установка snap-пакетов требует root привилегий (sudo). Установка с правами пользователя на данный момент невозможна. При установке snap загружается в /var/lib/snapd/snaps и монтируется в /snap/имя_пакета.
Кроме того, создаются также юнит-файлы для каждого snap-пакета и добавляются в /etc/systemd/system/multi-user.target.wants/, для того чтобы snap-пакеты монтировались при каждом запуске системы.
Поиском в snap-пакетах (snap find weather) я нашёл очень интересную консольную программу погоды от Яндекс — yandex-weather-cli.
Выполните в терминале следующую команду на установку yandex-weather-cli.
sudo snap install yandex-weather-cli —edge
По окончании установки, введите и выполните команду:
Данная команда по умолчанию выводит в терминале погодные условия вашей местности:
Если вы к команде добавите искомый город (на английском языке) в нижнем регистре, то получите вывод погодных данных в этом городе. Например, я добавил г. Москва (moscow):
Посмотреть список установленных snsp-пакетов
Вы можете просмотреть список установленных у вас snsp-пакетов командой:
Мой вывод команды списка установленных программ посредством snap:
3. Удаление пакетов snap
Для того чтобы удалить пакет выполните в терминале: sudo snap remove имя пакета. Например:
sudo snap remove opera-beta
Подробней о командах snap можно познакомиться, выполнив команду в терминале:
Источник
Установка и использование Snap-пакетов в Ubuntu 18.04
Dec 2, 2018 · 4 min read
Введение
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 нет по каким-то другим причинам, то сначала установите ее, а затем приступайте к работе.
Установку можно осуществить с помощью следующих команд:
Работа с системой Snap
snapd настроен и готов к использованию!
Поиск snap-приложений/пакетов
Чтобы найти доступные snap-приложения или пакеты выполните следующую команду:
Установка snap-приложений
Вы можете установить любые приложения/пакеты, доступные в формате snap, выполнив следующую команду:
Также можно указать конкретный канал, из которого вы хотите установить приложение. Канал — это snap-концепция, которая позволяет переключаться между разными каналами snap-приложений.
Запуск установленных snap-пакетов
Установленные snap-пакеты доступны в формате bin/snap и, как правило, добавлены в $PATH . Это позволяет сделать снепы доступными через ввод команды. Snap-приложение можно запустить, выполнив следующую команду:
Также его можно запустить через команду:
Просмотр списка установленных приложений
Чтобы увидеть все установленные snap-пакеты, выполните следующую команду:
Обновление установленных snap-приложений/пакетов
Снепы обновляются автоматически, но вы можете также обновить их вручную с помощью следующей команды:
Чтобы посмотреть, какие обновления snap-пакетов готовы к установке, выполните следующую команду:
Возврат к более ранней версии snap-приложений/пакетов
Если по какой-то причине вам не понравилось последнее обновление snap-пакета, вы можете вернуться к предыдущей версии с помощью следующей команды:
Такая команда вернет необходимую версию snap-пакета и данные, соответствующие ПО. Если предыдущая версия snap-пакета получена из другого канала, она все равно установится, и канал останется прежним.
Удаление snap-приложений/пакетов
Если вы хотите избавиться от снепов, удалите snap-пакет с помощью следующей команды:
Эта команда удалит приложение, все ее зависимости во время выполнения и связанные пользовательские данные. Если снеп запущен, команда сначала закроет его и затем удалит.
Включение и выключение snap-приложений/пакетов
Если вы хотите временно остановить работу снепа, просто отключите его и снова включите тогда, когда потребуется.
Список запущенных служб
Используйте snap services , чтобы просмотреть все установленные и запущенные снепы.
Перезапуск, запуск и приостановление snap-служб
Службы можно перезапустить с помощью команды snap restart .
Все службы, необходимые для работы снепов, будут перезагружены по умолчанию:
Чтобы запустить ранее остановленную службу, используйте следующую команду:
Чтобы остановить запущенную службу, используйте следующую команду:
Конфигурации snap set и get
Некоторые снепы, например, работающие в фоновом режиме, выставляют параметры конфигурации, которые можно изменить.
Команды для просмотра и изменения этих параметров конфигураций — snap get и snap set .
Выставленные параметры конфигурации можно посмотреть с помощью установленного снепа. Введите команду snap get
Чтобы изменить параметры конфигурации, задайте команду «snap set»:
Скачивание и установка snap-приложений offline
Установить snap-приложения можно и без подключения к интернету. Для этого необходимо скачать файлы snap-приложений/пакетов, задав следующую команду:
Эта команда загрузит .assert и .snap файл. Скопируйте их на другую Linux/Ubuntu систему, которая не имеет подключения к интернету. Затем установите загруженный файл с помощью следующей команды:
Заключение
Хотя данная система все еще разрабатывается, и доступно не так много snap-приложений/пакетов, тем не менее, она является одной из лучших систем управления ПО. Snap становится все популярнее, особенно благодаря таким настойчивым методам Canonical.
Источник