In de afgelopen jaren is de Linux-gemeenschap gezegend met een aantal opmerkelijke ontwikkelingen op het gebied van pakketbeheer op Linux-systemen, vooral als het gaat om universele of cross-distributie software verpakking en distributie. Een van deze ontwikkelingen is het Snap pakketformaat, ontwikkeld door Canonical, de makers van het populaire Ubuntu Linux.

Wat zijn Snap Pakketten?

Snaps zijn cross-distributie, zonder afhankelijkheden, en eenvoudig te installeren applicaties die zijn verpakt met al hun afhankelijkheden om te draaien op alle grote Linux distributies. Vanuit een enkele build, zal een snap (applicatie) draaien op alle ondersteunde Linux-distributies op desktop, in de cloud, en IoT. Ondersteunde distributies zijn Ubuntu, Debian, Fedora, Arch Linux, Manjaro en CentOS/RHEL.

Snaps zijn veilig – ze zijn beperkt en sandboxed, zodat ze niet het hele systeem in gevaar brengen. Ze draaien onder verschillende opsluitingsniveaus (dat is de mate van isolatie van het basissysteem en van elkaar). Meer in het bijzonder heeft iedere snap een interface die zorgvuldig geselecteerd is door de maker van de snap, gebaseerd op de vereisten van de snap, om toegang te bieden tot specifieke systeembronnen buiten hun opsluiting, zoals netwerktoegang, desktoptoegang, en meer.

Een ander belangrijk concept in het snap-ecosysteem is Channels. Een kanaal bepaalt welke release van een snap wordt geïnstalleerd en bijgehouden voor updates en het bestaat uit en wordt onderverdeeld door, tracks, risk-levels, en branches.

De belangrijkste componenten van het snap package management systeem zijn:

  • snapd – de achtergronddienst die uw snaps op een Linux-systeem beheert en onderhoudt.
  • snap – zowel het formaat van het applicatiepakket als het hulpprogramma voor de commandoregelinterface dat wordt gebruikt om snaps te installeren en te verwijderen en veel andere dingen te doen in het snap-ecosysteem.
  • snapcraft – het raamwerk en het krachtige hulpprogramma voor de commandoregel om snaps te bouwen.
  • snap store – een plaats waar ontwikkelaars hun snaps kunnen delen en waar Linux-gebruikers ze kunnen zoeken en installeren.

Daarnaast worden snaps ook automatisch bijgewerkt. U kunt configureren wanneer en hoe updates plaatsvinden. Standaard controleert de snapd daemon maximaal vier keer per dag op updates: elke updatecontrole wordt een refresh genoemd. U kunt ook handmatig een refresh starten.

Hoe installeert u Snapd in Linux

Zoals hierboven beschreven, is de snapd daemon de achtergronddienst die uw snap-omgeving op een Linux systeem beheert en onderhoudt, door de beleidsregels voor opsluiting uit te voeren en de interfaces te controleren waarmee snaps toegang krijgen tot specifieke systeembronnen. Het biedt ook het snap-commando en dient vele andere doeleinden.

Om het snapd-pakket op uw systeem te installeren, voert u het juiste commando voor uw Linux-distributie uit.

------------ ------------ $ 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

Nadat u snapd op uw systeem hebt geïnstalleerd, schakelt u de systemd-eenheid in die de belangrijkste snap-communicatiesocket beheert, met de systemctl-commando’s als volgt.

Op Ubuntu en zijn afgeleiden, zou dit automatisch moeten worden geactiveerd door het installatieprogramma van het pakket.

$ sudo systemctl enable --now snapd.socket

Merk op dat u het snap commando niet kunt uitvoeren als de snapd.socket niet draait. Voer de volgende opdrachten uit om te controleren of de socket actief is en automatisch wordt gestart bij het opstarten van het systeem.

$ sudo systemctl is-active snapd.socket$ sudo systemctl status snapd.socket$ sudo systemctl is-enabled snapd.socket
Check Snapd Service Status

Naar aanleiding hiervan kunt u klassieke snap-ondersteuning inschakelen door als volgt een symbolische koppeling te maken tussen /var/lib/snapd/snap en /snap.

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

Om te controleren welke versie van snapd en het snap-opdrachtregelhulpprogramma op uw systeem zijn geïnstalleerd, voert u de volgende opdracht uit.

$ snap version 
Check Snapd and Snap Version

How to Install Snaps in Linux

Met het snap-commando kunt u snaps installeren, configureren, vernieuwen en verwijderen, en interacteren met het grotere snap-ecosysteem.

Voordat u een snap installeert, kunt u controleren of deze bestaat in de snap store. Als de toepassing bijvoorbeeld in de categorie “chatservers” of “mediaspelers” thuishoort, kunt u deze commando’s uitvoeren om ernaar te zoeken, waarmee in de winkel wordt gezocht naar beschikbare pakketten in het stabiele kanaal.

$ snap find "chat servers"$ snap find "media players"
Toepassingen vinden in Snap Store

Om gedetailleerde informatie over een snap te tonen, bijvoorbeeld rocketchat-server, kunt u de naam of het pad opgeven. Merk op dat zowel in de snap store als in de geïnstalleerde snaps naar namen wordt gezocht.

$ snap info rocketchat-server
Get Info About Application in Snap

Om een snap op uw systeem te installeren, bijvoorbeeld rocketchat-server, voert u het volgende commando uit. Als u geen opties opgeeft, wordt een snap geïnstalleerd door het “stabiele” kanaal te volgen, met strikte veiligheidsbeperkingen.

$ sudo snap install rocketchat-server
Toepassing installeren vanuit Snap Store

U kunt ervoor kiezen om een toepassing vanuit een ander kanaal te installeren: edge, bèta of kandidaat, om de een of andere reden, met respectievelijk de --edge-, --beta– of --candidate-opties. Of gebruik de --channel optie en specificeer het kanaal waarvan u wilt installeren.

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

Beheer Snaps in Linux

In deze sectie zullen we leren hoe snaps te beheren in Linux systemen.

Inzicht in geïnstalleerde snaps

Om een overzicht van de op uw systeem geïnstalleerde snaps weer te geven, gebruikt u het volgende commando.

$ snap list
List Installed Snaps

Om de huidige revisie van een snap die wordt gebruikt weer te geven, geeft u de naam ervan op. U kunt ook alle beschikbare revisies weergeven door de optie --all toe te voegen.

$ snap list mailspringOR$ snap list --all mailspring
List All Installation Versions of Snap

Updating and Reverting Snaps

U kunt als volgt een gespecificeerde snap bijwerken, of alle snaps in het systeem als er geen zijn gespecificeerd. De opdracht refresh controleert het kanaal dat door de snap wordt gevolgd en downloadt en installeert een nieuwere versie van de snap als deze beschikbaar is.

$ sudo snap refresh mailspringOR$ sudo snap refresh#update all snaps on the local system
Een snap vernieuwen

Nadat u een app hebt bijgewerkt naar een nieuwe versie, kunt u terugkeren naar een eerder gebruikte versie met de opdracht revert. Merk op dat de aan de software gekoppelde gegevens ook worden teruggedraaid.

$ sudo snap revert mailspring
Een Snap terugdraaien naar een oudere versie

Wanneer u nu alle revisies van mailspring controleert, wordt de nieuwste revisie uitgeschakeld, een eerder gebruikte revisie is nu actief.

$ snap list --all mailspring
Check Revision of Snap

Disabling/Enabling and Removeing Snaps

U kunt een snap uitschakelen als u deze niet wilt gebruiken. Wanneer u de snap uitschakelt, zijn de binaries en services van de snap niet langer beschikbaar, maar alle gegevens zijn er nog wel.

$ sudo snap disable mailspring

Als u de snap weer wilt gebruiken, kunt u deze weer inschakelen.

$ sudo snap enable mailspring

Om een snap volledig van uw systeem te verwijderen, gebruikt u het commando remove. Standaard worden alle revisies van een snap verwijderd.

$ sudo snap remove mailspring

Om een specifieke revisie te verwijderen, gebruikt u de --revision optie als volgt.

$ sudo snap remove --revision=482 mailspring

Het is belangrijk om op te merken dat wanneer u een snap verwijdert, de gegevens ervan (zoals interne gebruiker-, systeem- en configuratiegegevens) door snapd (versie 2.39 en hoger) worden opgeslagen als een snapshot, en gedurende 31 dagen op het systeem worden bewaard. In het geval dat u de snap binnen de 31 dagen opnieuw installeert, kunt u de gegevens herstellen.

Conclusie

Snaps worden steeds populairder binnen de Linux-gemeenschap omdat ze een gemakkelijke manier bieden om software te installeren op elke Linux-distributie. In deze gids hebben we laten zien hoe je snaps in Linux kunt installeren en ermee kunt werken. We hebben behandeld hoe snapd te installeren, snaps te installeren, geïnstalleerde snaps te bekijken, snaps bij te werken en terug te draaien, en snaps uit te schakelen/in te schakelen en te verwijderen.

U kunt vragen stellen of ons bereiken via het feedback formulier hieronder. In het volgende deel van deze gids, zullen we het beheer van snaps (commando’s, aliassen, diensten, en snapshots) in Linux behandelen.

admin

Geef een antwoord

Het e-mailadres wordt niet gepubliceerd.

lg