Una guida per principianti agli Snaps in Linux – Parte 1

Negli ultimi anni, la comunità Linux è stata benedetta con alcuni straordinari progressi nel campo della gestione dei pacchetti nei sistemi Linux, soprattutto quando si tratta di software di packaging universale o cross-distribution e distribuzione. Uno di tali progressi è il formato di pacchetto Snap sviluppato da Canonical, i creatori del popolare Ubuntu Linux.

Cosa sono i pacchetti Snap?

Snaps sono applicazioni cross-distribution, prive di dipendenze e facili da installare, racchiuse con tutte le loro dipendenze per funzionare su tutte le principali distribuzioni Linux. Da un singolo build, uno snap (applicazione) funzionerà su tutte le distribuzioni Linux supportate su desktop, nel cloud e IoT. Le distribuzioni supportate includono Ubuntu, Debian, Fedora, Arch Linux, Manjaro e CentOS/RHEL.

Snaps sono sicuri – sono confinati e sandboxati in modo che non compromettano l’intero sistema. Girano sotto diversi livelli di confinamento (che è il grado di isolamento dal sistema base e l’uno dall’altro). Più notevolmente, ogni snap ha un’interfaccia accuratamente selezionata dal creatore dello snap, in base alle esigenze dello snap, per fornire accesso a specifici risorse del sistema al di fuori del loro confinamento come accesso a rete, accesso al desktop e altro ancora.

Un altro concetto importante nell’ecosistema snap sono i Canali. Un canale determina quale versione di un snap è installata e tracciata per gli aggiornamenti e consiste di, ed è suddiviso in, tracce, livelli di rischio e rami.

I principali componenti del sistema di gestione dei pacchetti snap sono:

  • snapd – il servizio di background che gestisce e mantiene i tuoi snaps su un sistema Linux.
  • snap – sia il formato del pacchetto dell’applicazione che lo strumento dell’interfaccia a riga di comando utilizzato per installare e rimuovere gli snaps e fare molte altre cose nell’ecosistema snap.
  • snapcraft – il framework e potente strumento a riga di comando per la costruzione di snaps.
  • negozio snap – un luogo dove gli sviluppatori possono condividere i loro snaps e gli utenti Linux cercarli e installarli.

Inoltre, gli snaps si aggiornano automaticamente. Puoi configurare quando e come avvengono gli aggiornamenti. Per impostazione predefinita, il demone snapd controlla gli aggiornamenti fino a quattro volte al giorno: ogni controllo degli aggiornamenti è chiamato aggiornamento. Puoi anche avviare manualmente un aggiornamento.

Come installare Snapd in Linux

Come descritto sopra, il demone snapd è il servizio di background che gestisce e mantiene il tuo ambiente snap su un sistema Linux, implementando le politiche di confinamento e controllando le interfacce che consentono agli snaps di accedere a risorse specifiche del sistema. Fornisce anche il comando snap e svolge molti altri scopi.

Per installare il pacchetto snapd sul tuo sistema, esegui il comando appropriato per la tua distribuzione Linux.

------------ [On Debian and Ubuntu] ------------ 
$ sudo apt update 
$ sudo apt install snapd

------------ [On Fedora Linux] ------------
# dnf install snapd			

------------ [On CentOS and RHEL] ------------
# yum install epel-release 
# yum install snapd		

------------ [On openSUSE - replace openSUSE_Leap_15.0 with the version] ------------
$ 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

------------ [On Manjaro Linux] ------------
# pacman -S snapd

------------ [On Arch Linux] ------------
# git clone https://aur.archlinux.org/snapd.git
# cd snapd
# makepkg -si

Dopo aver installato snapd sul tuo sistema, abilita l’unità systemd che gestisce il socket di comunicazione principale di snap, utilizzando i comandi systemctl come segue.

Su Ubuntu e le sue derivate, questo dovrebbe essere attivato automaticamente dall’installatore del pacchetto.

$ sudo systemctl enable --now snapd.socket

Nota che non puoi eseguire il comando snap se il snapd.socket non è in esecuzione. Esegui i seguenti comandi per verificare se è attivo e abilitato per l’avvio automatico del sistema.

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

Successivamente, abilita il supporto snap classico creando un collegamento simbolico tra /var/lib/snapd/snap e /snap come segue.

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

Per verificare la versione di snapd e dello strumento a riga di comando snap installato sul tuo sistema, esegui il seguente comando.

$ snap version 
Check Snapd and Snap Version

Come Installare Snaps in Linux

Il comando snap ti permette di installare, configurare, aggiornare e rimuovere snaps, e interagire con l’ampio ecosistema snap.

Prima di installare uno snap, puoi verificare se esiste nello snap store. Ad esempio, se l’applicazione appartiene alla categoria dei “chat server” o dei “lettori multimediali“, puoi eseguire questi comandi per cercarla, che interrogheranno lo store per i pacchetti disponibili nel canale stabile.

$ snap find "chat servers"
$ snap find "media players"
Find Applications in Snap Store

Per mostrare informazioni dettagliate su uno snap, ad esempio, rocketchat-server, puoi specificarne il nome o il percorso. Nota che i nomi vengono cercati sia nello snap store che negli snap installati.

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

Per installare uno snap sul tuo sistema, ad esempio, rocketchat-server, esegui il seguente comando. Se non vengono fornite opzioni, uno snap viene installato seguendo il canale “stable“, con un rigido confinamento della sicurezza.

$ sudo snap install rocketchat-server
Install Application from Snap Store

Puoi scegliere di installare da un canale diverso: edge, beta, o candidate, per un motivo o per un altro, utilizzando le opzioni --edge, --beta, o --candidate rispettivamente. Oppure utilizza l’opzione --channel e specifica il canale da cui desideri installare.

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

Gestire gli Snaps in Linux

In questa sezione, impareremo come gestire gli snaps nel sistema Linux.

Visualizzazione degli Snaps Installati

Per visualizzare un riepilogo degli snaps installati sul tuo sistema, utilizza il seguente comando.

$ snap list
List Installed Snaps

Per elencare la revisione attuale di un snap in uso, specifica il suo nome. Puoi anche elencare tutte le sue revisioni disponibili aggiungendo l’opzione --all.

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

Aggiornamento e ripristino degli snap

Puoi aggiornare uno snap specificato, o tutti gli snap nel sistema se nessuno è specificato come segue. Il comando refresh controlla il canale tracciato dallo snap e scarica e installa una versione più recente dello snap se disponibile.

$ sudo snap refresh mailspring
OR
$ sudo snap refresh		#update all snaps on the local system
Refresh a Snap

Dopo aver aggiornato un’applicazione a una nuova versione, puoi ripristinare una versione precedentemente utilizzata usando il comando revert. Nota che i dati associati al software saranno anch’essi ripristinati.

$ sudo snap revert mailspring
Revert a Snap to Older Version

Ora quando controlli tutte le revisioni di mailspring, l’ultima revisione è disattivata, una revisione precedentemente utilizzata è ora attiva.

$ snap list --all mailspring
Check Revision of Snap

Disabilitazione/Abilitazione e Rimozione degli snap

Puoi disabilitare uno snap se non vuoi usarlo. Quando disabilitato, i binari e i servizi di uno snap non saranno più disponibili, tuttavia, tutti i dati rimarranno.

$ sudo snap disable mailspring

Se hai bisogno di utilizzare nuovamente lo snap, puoi abilitarlo nuovamente.

$ sudo snap enable mailspring

Per rimuovere completamente uno snap dal tuo sistema, utilizza il comando remove. Per impostazione predefinita, tutte le revisioni di uno snap vengono rimosse.

$ sudo snap remove mailspring

Per rimuovere una revisione specifica, utilizza l’opzione --revision come segue.

$ sudo snap remove  --revision=482 mailspring

È importante notare che quando si rimuove uno snapper, i suoi dati (come utente interno, sistema e dati di configurazione) vengono salvati da snapd (versione 2.39 e successiva) come uno snapshot e archiviati sul sistema per 31 giorni. Nel caso in cui si reinstalli lo snap entro i 31 giorni, è possibile ripristinare i dati.

Conclusioni

Snaps stanno diventando sempre più popolari all’interno della comunità Linux in quanto forniscono un modo facile per installare software su qualsiasi distribuzione Linux. In questa guida, abbiamo mostrato come installare e lavorare con gli snaps in Linux. Abbiamo coperto come installare snapd, installare snaps, vedere gli snaps installati, aggiornare e ripristinare gli snaps e disattivare/attivare e rimuovere gli snaps.

È possibile fare domande o contattarci tramite il modulo di feedback qui sotto. Nella prossima parte di questa guida, tratteremo il gestione degli snaps (comandi, alias, servizi e snapshot) in Linux</diy

Source:
https://www.tecmint.com/install-snap-in-linux/