Comando zypper: pacchetti e repository su openSUSE e SUSE

zypper gestisce ricerca, installazione, rimozione e aggiornamento dei pacchetti su openSUSE e SUSE Linux Enterprise. refresh aggiorna le informazioni dei repository, senza aggiornare i programmi; update e dup modificano invece i pacchetti con criteri diversi e vanno scelti secondo il prodotto e la sua modalità di rilascio.

Il gestore usa i metadati dei repository per scegliere i pacchetti e risolverne le dipendenze. Prima di confermare un'operazione leggi ciò che verrà installato, aggiornato, sostituito o rimosso. Non dedurre la sicurezza del piano dal solo fatto che il comando riesca a trovare una soluzione.

Sintassi e preparazione

zypper [global-options] command [arguments...]

global-options, command e arguments sono segnaposto. Le opzioni generali precedono il comando; quelle specifiche seguono il sottocomando, come indicato dall'aiuto locale. Controlla zypper --version, zypper help e man zypper, insieme alla versione della distribuzione in /etc/os-release.

Le normali interrogazioni non richiedono privilegi amministrativi; le modifiche ai pacchetti di sistema sì. Verifica spazio disponibile, accesso ai repository, alimentazione stabile e backup prima delle operazioni importanti. Gli esempi riguardano un sistema tradizionale modificabile: sui sistemi transazionali con radice di sola lettura segui la procedura specifica del prodotto, che può richiedere strumenti diversi o un wrapper.

Esempi: aggiornare i metadati, cercare e installare

Aggiornare le informazioni dei repository

sudo zypper refresh

Il comando aggiorna i metadati necessari a conoscere i pacchetti disponibili. Non installa le nuove versioni dei programmi. Leggi il risultato per ciascun repository: un errore di rete o di firma non equivale a un aggiornamento completo riuscito. Se viene richiesta fiducia in una nuova chiave, verifica origine e impronta attraverso le indicazioni ufficiali prima di accettarla.

Cercare nginx

zypper search nginx

Esamina i nomi trovati e lo stato indicato. Una corrispondenza nella ricerca non dimostra che il pacchetto sia già installato. Per approfondire usa zypper info nginx; per vedere più dettagli della ricerca, compresi versione e repository, consulta zypper search --details nginx nella tua versione.

Installare il pacchetto

sudo zypper install nginx

Controlla il riepilogo prima di confermare: nome e architettura, dipendenze aggiuntive, dimensioni e possibili rimozioni o cambi di fornitore. Se il risolutore propone più soluzioni a un conflitto, leggi l'effetto di ciascuna; interrompi se non è chiaro quale preservi i programmi necessari. Non aggiungere opzioni di forzatura per far sparire il messaggio.

Puoi esaminare una proposta senza installare il pacchetto con sudo zypper install --dry-run nginx. Questo controllo non garantisce lo stesso risultato in seguito, se repository o stato locale cambiano. Inoltre, senza gli RPM in cache non controlla tutti i conflitti fra file: non interpretarlo come prova completa della riuscita dell'installazione.

Dopo una vera installazione verifica l'esito e interroga nuovamente il pacchetto. La presenza di nginx non dimostra che il servizio sia già configurato, attivo o raggiungibile attraverso il firewall: questi controlli dipendono dal sistema e sono distinti dalla gestione del pacchetto.

Leggere stato, versione e repository

zypper info bash

Ecco un esempio parziale del formato, riferito al caso in cui bash risulti installato:

Information for package bash:
Repository : ...
Name       : bash
Version    : ...
Installed  : Yes

I puntini sostituiscono valori variabili. Lingua, campi e versioni dipendono dal sistema; non copiare i puntini come un numero di versione. Leggi Installed e il contesto della voce insieme a versione e repository, distinguendo lo stato locale dai candidati disponibili.

zypper repos mostra i repository configurati; zypper repos --uri permette di controllarne anche gli indirizzi. Verifica se sono abilitati e adatti alla versione del prodotto. Il numero visualizzato nell'elenco non è un identificatore da presumere stabile fra computer diversi.

Aggiungere un repository o modificarne la priorità può cambiare la scelta dei pacchetti. Non usare queste operazioni come rimedio generico a un pacchetto assente: controlla prima la fonte e la compatibilità. Un elenco corretto della configurazione non dimostra da solo che tutti i repository siano raggiungibili o aggiornati.

Comandi principali

Comando Funzione
refresh Aggiorna i metadati dei repository, senza aggiornare i programmi.
search / info Cerca pacchetti o ne mostra stato e informazioni.
install / remove Installa o rimuove pacchetti; controlla tutte le dipendenze coinvolte.
update / dup Applica aggiornamenti oppure riallinea il sistema allo stato dei repository secondo la procedura del prodotto.
repos Elenca i repository configurati: verifica abilitazione, origine e compatibilità.

Scegliere fra update e dup senza confondere le distribuzioni

update aggiorna i pacchetti secondo i vincoli del risolutore. dup, abbreviazione di dist-upgrade, riallinea invece il sistema allo stato dei repository selezionati e può includere downgrade, sostituzioni, suddivisioni di pacchetti e rimozioni necessarie a risolvere le dipendenze. Non è semplicemente un aggiornamento ordinario più energico.

Per Tumbleweed, distribuzione a rilascio continuo, la documentazione openSUSE indica sudo zypper dup per gli aggiornamenti del sistema. Non sostituirlo con update per analogia con un altro prodotto. Lo snapshot di Tumbleweed è un insieme pubblicato di aggiornamenti; non è uno snapshot del file system Btrfs utilizzabile per il recupero.

Per Leap e SUSE Linux Enterprise distingui manutenzione della versione corrente, patch e migrazione a una nuova versione. Segui la guida della versione effettivamente installata: non copiare la procedura Tumbleweed su un server SLE. Una migrazione richiede repository e passaggi corretti; eseguire dup non sceglie automaticamente una destinazione appropriata.

Prima di dup risolvi gli errori di refresh dei repository abilitati. Repository mancanti o destinati a un'altra versione possono produrre un piano pericoloso. Quando sono presenti fonti di terze parti, esamina con particolare attenzione cambi di fornitore e rimozioni; non abilitare il cambio di fornitore soltanto per aggirare un conflitto.

Prevedi una finestra di manutenzione e controlla eventuali riavvii di processi o del sistema dopo gli aggiornamenti. Non cancellare i file di blocco mentre un altro gestore è attivo e non disabilitare la verifica delle firme. Per recuperare servono backup o snapshot predisposti e verificati: reinstallare o retrocedere un pacchetto non ripristina necessariamente i dati applicativi.

Domande frequenti

Basta zypper refresh per aggiornare i programmi?

No. Refresh aggiorna le informazioni dei repository. I pacchetti vengono modificati da operazioni come install, update o dup, da scegliere secondo il prodotto e la procedura prevista.

Devo usare dup su qualunque sistema openSUSE o SUSE?

No. È il comando indicato per aggiornare Tumbleweed, ma una migrazione o la manutenzione di Leap e SUSE Linux Enterprise richiedono le istruzioni specifiche del prodotto. Prima verifica versione, repository e piano.

Documentazione ufficiale

Il manuale ufficiale di zypper per Tumbleweed descrive le opzioni e i limiti del dry-run. La guida openSUSE a Zypper illustra le operazioni di base; la guida agli aggiornamenti di Tumbleweed spiega l'uso di dup e la distinzione fra i tipi di snapshot. Confrontale con i manuali e le istruzioni del prodotto installato.