W ciągu ostatnich kilku lat społeczność linuksowa została pobłogosławiona kilkoma znaczącymi postępami w dziedzinie zarządzania pakietami w systemach linuksowych, szczególnie jeśli chodzi o uniwersalne lub międzydystrybucyjne pakowanie i dystrybucję oprogramowania. Jednym z takich postępów jest format pakietów Snap opracowany przez Canonical, twórców popularnego Ubuntu Linux.

Czym są pakiety Snap?

Pakiety Snap są uniwersalnymi, wolnymi od zależności i łatwymi do zainstalowania aplikacjami, spakowanymi wraz z wszystkimi ich zależnościami, aby działały na wszystkich głównych dystrybucjach Linuksa. Z jednej kompilacji, snap (aplikacja) będzie działać na wszystkich wspieranych dystrybucjach Linuksa na pulpicie, w chmurze i IoT. Obsługiwane dystrybucje to Ubuntu, Debian, Fedora, Arch Linux, Manjaro i CentOS/RHEL.

Snapy są bezpieczne – są ograniczone i sandboxowane tak, że nie narażają całego systemu. Działają na różnych poziomach zamknięcia (czyli stopnia odizolowania od systemu bazowego i siebie nawzajem). Co więcej, każdy snap ma interfejs starannie wybrany przez twórcę snapa, w oparciu o wymagania snapa, aby zapewnić dostęp do określonych zasobów systemowych poza ich ograniczeniem, takich jak dostęp do sieci, dostęp do pulpitu i więcej.

Innym ważnym pojęciem w ekosystemie snapów są kanały. Kanał określa, które wydanie snapa jest instalowane i śledzone pod kątem aktualizacji, i składa się z i jest podzielony przez, ścieżki, poziomy ryzyka i gałęzie.

Główne składniki systemu zarządzania pakietami snap to:

  • snapd – usługa tła, która zarządza i utrzymuje snapy w systemie Linux.
  • snap – zarówno format pakietu aplikacji, jak i narzędzie interfejsu wiersza poleceń używane do instalowania i usuwania snapów oraz robienia wielu innych rzeczy w ekosystemie snapów.
  • snapcraft – szkielet i potężne narzędzie wiersza poleceń do budowania snapów.
  • snap store – miejsce, w którym programiści mogą udostępniać swoje snapy, a użytkownicy Linuksa wyszukiwać je i instalować.

Poza tym snapy aktualizują się automatycznie. Można skonfigurować, kiedy i w jaki sposób aktualizacje się pojawiają. Domyślnie demon snapd sprawdza dostępność aktualizacji do czterech razy dziennie: każde sprawdzenie aktualizacji nazywane jest odświeżeniem. Można również ręcznie zainicjować odświeżenie.

Jak zainstalować Snapd w Linuksie

Jak opisano powyżej, demon snapd jest usługą tła, która zarządza i utrzymuje środowisko snapów w systemie Linux, wdrażając zasady ograniczania i kontrolując interfejsy, które pozwalają snapom uzyskać dostęp do określonych zasobów systemowych. Udostępnia również polecenie snap i służy do wielu innych celów.

Aby zainstalować pakiet snapd w systemie, uruchom odpowiednie polecenie dla swojej dystrybucji Linuksa.

------------ ------------ $ sudo apt update $ sudo apt install snapd------------ ------------# dnf install snapd------------ ------------# yum install epel-release # yum install snapd------------ ------------$ 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------------ ------------# pacman -S snapd------------ ------------# git clone https://aur.archlinux.org/snapd.git# cd snapd# makepkg -si

Po zainstalowaniu snapd w systemie włącz jednostkę systemd, która zarządza głównym gniazdem komunikacyjnym snapów, za pomocą poleceń systemctl w następujący sposób.

Na Ubuntu i jego pochodnych, to powinno być wywołane automatycznie przez instalator pakietów.

$ sudo systemctl enable --now snapd.socket

Zauważ, że nie można uruchomić polecenia snap, jeśli snapd.socket nie jest uruchomiony. Uruchom następujące polecenia, aby sprawdzić, czy jest ono aktywne i włączone do automatycznego uruchamiania przy starcie systemu.

$ sudo systemctl is-active snapd.socket$ sudo systemctl status snapd.socket$ sudo systemctl is-enabled snapd.socket
Sprawdź stan usługi snapd

Następnie włącz obsługę klasycznego snapa, tworząc dowiązanie symboliczne między /var/lib/snapd/snap i /snap w następujący sposób.

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

Aby sprawdzić wersję snapd i narzędzia wiersza poleceń snap zainstalowanego w systemie, uruchom następujące polecenie.

$ snap version 
Sprawdź wersję snapd i snap

Jak zainstalować snapy w systemie Linux

Komenda snap umożliwia instalowanie, konfigurowanie, odświeżanie i usuwanie snapów oraz interakcję z większym ekosystemem snapów.

Przed zainstalowaniem snapa można sprawdzić, czy istnieje on w magazynie snapów. Na przykład, jeśli aplikacja należy do kategorii „serwerów czatu” lub „odtwarzaczy multimedialnych”, można uruchomić te polecenia, aby ją wyszukać, co spowoduje wyszukanie w sklepie dostępnych pakietów w kanale stabilnym.

$ snap find "chat servers"$ snap find "media players"
Wyszukiwanie aplikacji w sklepie Snap

Aby wyświetlić szczegółowe informacje o snapie, na przykład rocketchat-server, można określić jego nazwę lub ścieżkę. Należy pamiętać, że nazwy są szukane zarówno w magazynie snapów, jak i w zainstalowanych snapach.

$ snap info rocketchat-server
Uzyskaj informacje o aplikacji w snapie

Aby zainstalować snap w systemie, na przykład rocketchat-server, wykonaj następujące polecenie. Jeśli nie podano żadnych opcji, snap jest instalowany w kanale „stable”, z zachowaniem ścisłych ograniczeń bezpieczeństwa.

$ sudo snap install rocketchat-server
Instalacja aplikacji ze sklepu Snap

Możesz zdecydować się na instalację z innego kanału: edge, beta lub candidate, z jednego lub drugiego powodu, używając odpowiednio opcji --edge, --beta lub --candidate. Lub użyj opcji --channel i określ kanał, z którego chcesz zainstalować.

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

Zarządzanie snapami w systemie Linux

W tym rozdziale dowiemy się, jak zarządzać snapami w systemie Linux.

Wyświetlanie zainstalowanych snapsów

Aby wyświetlić podsumowanie snapsów zainstalowanych w systemie, użyj następującego polecenia.

$ snap list
List Installed Snaps

Aby wyświetlić bieżącą rewizję używanego snapa, podaj jego nazwę. Można także wyświetlić listę wszystkich dostępnych wersji, dodając opcję --all.

$ snap list mailspringOR$ snap list --all mailspring
Lista wszystkich zainstalowanych wersji snapów

Uaktualnianie i odwracanie snapów

Można zaktualizować określony snap lub wszystkie snapy w systemie, jeśli żaden nie został określony w następujący sposób. Polecenie odśwież sprawdza kanał śledzony przez snap, a następnie pobiera i instaluje nowszą wersję snapa, jeśli jest dostępna.

$ sudo snap refresh mailspringOR$ sudo snap refresh#update all snaps on the local system
Odśwież snap

Po zaktualizowaniu aplikacji do nowej wersji można przywrócić poprzednio używaną wersję za pomocą polecenia revert. Należy pamiętać, że dane związane z programem również zostaną przywrócone.

$ sudo snap revert mailspring
Revert a Snap to Older Version

Teraz, gdy sprawdzasz wszystkie rewizje mailspringa, najnowsza rewizja jest wyłączona, poprzednio używana rewizja jest teraz aktywna.

$ snap list --all mailspring
Check Revision of Snap

Włączanie i usuwanie snapów

Możesz wyłączyć snap, jeśli nie chcesz go używać. Po wyłączeniu pliki binarne i usługi snapa nie będą już dostępne, jednak wszystkie dane będą nadal dostępne.

$ sudo snap disable mailspring

Jeśli chcesz ponownie użyć snapa, możesz go ponownie włączyć.

$ sudo snap enable mailspring

Aby całkowicie usunąć snapa z systemu, użyj polecenia remove. Domyślnie usuwane są wszystkie rewizje snapa.

$ sudo snap remove mailspring

Aby usunąć konkretną rewizję, użyj opcji --revision w następujący sposób.

$ sudo snap remove --revision=482 mailspring

Należy pamiętać, że po usunięciu snapa jego dane (takie jak wewnętrzne dane użytkownika, systemu i konfiguracji) są zapisywane przez snapd (wersja 2.39 i nowsze) jako migawka i przechowywane w systemie przez 31 dni. W przypadku reinstalacji snapa w ciągu 31 dni można przywrócić dane.

Podsumowanie

Snapy stają się coraz bardziej popularne w społeczności linuksowej, ponieważ zapewniają łatwy sposób instalowania oprogramowania w dowolnej dystrybucji Linuksa. W tym przewodniku, pokazaliśmy jak zainstalować i pracować z snapami w Linuksie. Pokazaliśmy jak zainstalować snapd, zainstalować snaps, przeglądać zainstalowane snaps, aktualizować i przywracać snaps, oraz wyłączać/włączać i usuwać snaps.

Możesz zadawać pytania lub skontaktować się z nami poprzez formularz opinii poniżej. W następnej części tego przewodnika, zajmiemy się zarządzaniem snaps (komendy, aliasy, usługi i snapshoty) w Linuksie.

admin

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany.

lg