yum è per CentOS e Redhat.
apt-get è per Debian e Ubuntu.
Allo stesso modo, zypper è per SUSE Linux.
Zypper è uno strumento a riga di comando per la gestione dei pacchetti nelle piattaforme OpenSUSE e SUSE Enterprise Linux.
Ad alto livello, puoi gestire due cose diverse usando il comando zypper:
- Gestisci pacchetti:Zypper viene utilizzato per installare, rimuovere, aggiornare ed eseguire query sui pacchetti software di supporti locali o remoti.
- Gestisci i repository:Zypper ha anche la capacità di lavorare con i repository. Puoi aggiungere, rimuovere, abilitare o disabilitare i repository dalla riga di comando. Ha anche la possibilità di dare priorità ai tuoi repository durante il processo di installazione.
Io. Gestisci i pacchetti utilizzando Zypper
1. Installa un pacchetto usando zypper
Per installare un pacchetto usando il comando zypper, usa la seguente sintassi:
zypper install <package Name>
Ad esempio, per installare Mozilla Firefox e tutte le sue dipendenze, eseguire quanto segue:
# zypper install MozillaFirefox Loading repository data... Reading installed packages... Resolving package dependencies... The following NEW packages are going to be installed: MozillaFirefox MozillaFirefox-branding-SLED The following packages are not supported by their vendor: MozillaFirefox MozillaFirefox-branding-SLED 2 new packages to install. Overall download size: 964.0 KiB. After the operation, additional 3.4 MiB will be used. Continue? [y/n/?] (y): y Retrieving package MozillaFirefox-3.6.16-0.2.1.x86_64 (1/2), 949.0 KiB (3.4 MiB unpacked) Retrieving: MozillaFirefox-3.6.16-0.2.1.x86_64.rpm [done] Installing: MozillaFirefox-3.6.16-0.2.1 [done] Retrieving package MozillaFirefox-branding-SLED-3.5-1.1.5.x86_64 (2/2), 15.0 KiB (34.0 KiB unpacked) Retrieving: MozillaFirefox-branding-SLED-3.5-1.1.5.x86_64.rpm [done] Installing: MozillaFirefox-branding-SLED-3.5-1.1.5 [done]
2. Installa il pacchetto sorgente
Per installare il pacchetto sorgente in un repository, usa l'opzione di installazione sorgente come mostrato di seguito.
# zypper source-install apache2-mod_nss Reading installed packages... Loading repository data... Resolving package dependencies... Retrieving package mozilla-nss-devel-3.12.8-1.2.1.x86_64 (2/3), 473.0 KiB (2.6 MiB unpacked) Retrieving: mozilla-nss-devel-3.12.8-1.2.1.x86_64.rpm [done] Installing: mozilla-nss-devel-3.12.8-1.2.1 [done] Retrieving: apache2-mod_nss-1.0.8-17.5.src.rpm [done]
3. Aggiorna un pacchetto
Una volta installato un pacchetto, puoi aggiornarlo a una nuova versione quando diventa disponibile utilizzando il comando update come mostrato di seguito.
Quanto segue aggiornerà solo il pacchetto MozillaFirefox.
zypper update MozillaFirefox
Quanto segue aggiornerà tutti i pacchetti sul tuo sistema all'ultima versione.
zypper update
Puoi anche visualizzare tutti gli aggiornamenti disponibili utilizzando l'opzione elenco aggiornamenti come mostrato di seguito.
zypper list-updates
4. Aggiornamento della distribuzione completa a livello di sistema
Per eseguire un aggiornamento completo della distribuzione sul sistema, utilizzare l'opzione dup insieme a zypper come mostrato di seguito:
# zypper dup Warning: You are about to do a distribution upgrade with all enabled repositories. Make sure these repositories are compatible before you continue. See 'man zypper' for more information about this command. Loading repository data... Reading installed packages... Computing distribution upgrade... The following NEW packages are going to be installed: drbd-xen libsoftokn3-32bit mozilla-nspr-32bit mozilla-nss-32bit mozilla-nss-certs-32bit suseRegister xen yast2-registration yast2-registration-branding-SLE The following packages are going to be upgraded: libfreebl3-32bit libnsssharedhelper0 libnsssharedhelper0-32bit The following packages are going to change vendor: libfreebl3-32bit SUSE LINUX Products GmbH, Nuernberg, Germany -> openSUSE Build Service libnsssharedhelper0 SUSE LINUX Products GmbH, Nuernberg, Germany -> openSUSE Build Service libnsssharedhelper0-32bit SUSE LINUX Products GmbH, Nuernberg, Germany -> openSUSE Build Service
5. Elimina un pacchetto
Per rimuovere un pacchetto, utilizzare l'opzione di rimozione come mostrato di seguito. Questo rimuoverà anche tutte le dipendenze.
# zypper remove MozillaFirefox Loading repository data... Reading installed packages... Resolving package dependencies... The following packages are going to be REMOVED: MozillaFirefox MozillaFirefox-branding-SLED 2 packages to remove. After the operation, 3.4 MiB will be freed. Continue? [y/n/?] (y): y Removing MozillaFirefox-branding-SLED-3.5-1.1.5 [done] Removing MozillaFirefox-3.6.16-0.2.1 [done]
6. Cerca un pacchetto specifico
Per cercare un pacchetto da un repository, utilizzare il comando seguente. Puoi anche utilizzare il carattere jolly nella parola chiave.
In questo esempio, cercherà tutti i pacchetti che iniziano con la parola chiave "usb".
# zypper search usb* Loading repository data... Reading installed packages... S | Name | Summary | Type --+----------------+----------------------------------------------------------------+-------- | usb_modeswitch | A mode switching tool for controlling multiple-device USB gear | package i | usbutils | Tools and libraries for USB devices | package
7. Visualizza i dettagli su un pacchetto
Per visualizzare le informazioni su un pacchetto specifico, usa l'opzione info con zypper come mostrato di seguito:
# zypper info usbutils Loading repository data... Reading installed packages... Information for package usbutils: Repository: @System Name: usbutils Version: 0.73-38.19 Arch: x86_64 Vendor: SUSE LINUX Products GmbH, Nuernberg, Germany Support Level: unknown Installed: Yes Status: up-to-date Installed Size: 461.0 KiB Summary: Tools and libraries for USB devices Description: This package contains a utility for inspecting devices connected to USB ports. It requires kernel version 2.3.99-pre7 or newer, or the USB backport which was introduced in 2.2.18 (supporting the /proc/bus/usb interface).
8. Installa le patch usando Zypper
Puoi anche usare zypper per installare le patch sul tuo sistema.
Innanzitutto, visualizza tutte le patch disponibili utilizzando l'opzione patch come mostrato di seguito:
zypper patches
Successivamente, puoi installare una patch specifica dall'output sopra utilizzando l'opzione patch come mostrato di seguito.
zypper patch <patch name>
9. Blocca un pacchetto specifico
Il blocco del pacchetto impedisce le modifiche al pacchetto sul sistema. Una volta impostato questo blocco, non è possibile rimuovere, aggiornare il pacchetto.
L'esempio seguente mostra come impostare i blocchi del pacchetto e rimuoverlo quando necessario.
Aggiungi un blocco del pacchetto al pacchetto ypbind usando l'opzione "al". al sta per "Aggiungi blocco"
# zypper al ypbind Specified lock has been successfully added.
Per visualizzare tutti i pacchetti bloccati, utilizzare l'opzione "ll". ll sta per "Blocchi elenco". L'output seguente indica che il pacchetto "ypbind" è attualmente bloccato e non è possibile rimuovere o aggiornare questo pacchetto.
# zypper ll # | Name | Type | Repository --+--------+---------+----------- 1 | ypbind | package | (any)
10. Rimuovi il blocco da un pacchetto
Rimuovere il blocco del pacchetto dal pacchetto ypbind utilizzando l'opzione "rl". rl sta per "Rimuovi blocco"
# zypper rl ypbind Loading repository data... Reading installed packages... 1 lock has been successfully removed.
Come puoi vedere di seguito, al momento nessun pacchetto è bloccato.
# zypper ll There are no package locks defined.
II. Gestisci i repository utilizzando Zypper
11. Aggiungi un repository usando Zypper
La sintassi generale per aggiungere un repository utilizzando l'URI http è la seguente:
zypper addrepo <options> <URI> <alias>
Ad esempio, per aggiungere un repository utilizzando l'URI, procedi come segue:
# zypper addrepo --check --refresh --name "Mozilla-repo" http://download.opensuse.org/repositories/mozilla/SLE_11/ "Mozillarepo" Adding repository 'Mozilla-repo' [done] Repository 'Mozilla-repo' successfully added Enabled: Yes Autorefresh: Yes URI: http://download.opensuse.org/repositories/mozilla/SLE_11/
12. Crea un repository locale
Puoi anche creare un repository locale da una directory locale sul tuo server che contiene tutti i file rpm usando la seguente sintassi:
zypper addrepo <Path_to_dir> <Repo Name>
Ad esempio, per aggiungere un repository chiamato myrepo con la directory locale che contiene tutti gli rpm usa il comando seguente:
# zypper addrepo /var/stormgt/dsminst mylocalrepo Adding repository 'mylocalrepo' [done] Repository 'mylocalrepo' successfully added Enabled: Yes Autorefresh: No URI: dir:///var/stormgt/dsminst # zypper search --repo mylocalrepo Loading repository data... Reading installed packages... S | Name | Summary | Type --+-------------+-----------------------------------------+-------- i | TIVsm-API | the API | package i | TIVsm-API64 | the API | package i | TIVsm-BA | the Backup Archive Client | package i | gskcrypt32 | IBM GSKit Cryptography Runtime | package i | gskcrypt64 | IBM GSKit Cryptography Runtime | package i | gskssl32 | IBM GSKit SSL Runtime With Acme Toolkit | package i | gskssl64 | IBM GSKit SSL Runtime With Acme Toolkit | package
Puoi anche aggiungere la posizione NFS o FTP ai repository usando il comando sopra.
13. Visualizza repository
Puoi visualizzare tutti i repository usando il seguente comando zypper:
# zypper lr # | Alias | Name | Enabled | Refresh --+--------------------------------------------------+--------------------------------------------------+---------+-------- 1 | Mozillarepo | Mozilla-repo | Yes | Yes 2 | SUSE-Linux-Enterprise-Server-11-SP1 11.1.1-1.152 | SUSE-Linux-Enterprise-Server-11-SP1 11.1.1-1.152 | Yes | Yes
Per visualizzare l'URI completo per il repository, utilizzare quanto segue:
# zypper lr --uri # | Alias | Name | Enabled | Refresh | URI --+--------------------------------------------------+--------------------------------------------------+---------+---------+---------------------------------------------------------- 1 | Mozillarepo | Mozilla-repo | Yes | Yes | http://download.opensuse.org/repositories/mozilla/SLE_11/ 2 | SUSE-Linux-Enterprise-Server-11-SP1 11.1.1-1.152 | SUSE-Linux-Enterprise-Server-11-SP1 11.1.1-1.152 | Yes | Yes | http://19.106.65.64/FUSELinux/600RC0
14. Cerca i pacchetti all'interno del repository
Per elencare tutti i pacchetti dal repository specifico, utilizzare il comando seguente:
# zypper search --repo Mozillarepo Loading repository data... Reading installed packages... S | Name | Summary | Type --+--------------------------------------+-------------------------------------------------------------------------+----------- i | MozillaFirefox | Mozilla Firefox Web Browser | package i | MozillaFirefox-branding-SLED | SLED branding of MozillaFirefox | package | MozillaFirefox-branding-openSUSE | openSUSE branding of MozillaFirefox | package | MozillaFirefox-branding-openSUSE | openSUSE branding of MozillaFirefox | srcpackage
15. Rinomina un repository
Per rinominare qualsiasi repository, usa l'opzione renamerepo.
In questo esempio, il nome del repository "mylocalrepo" è stato rinominato "LOCALRPM-Repo"
# zypper renamerepo mylocalrepo LOCALRPM-Repo Repository 'mylocalrepo' renamed to 'LOCALRPM-Repo'.
16. Elimina un repository
Per eliminare un repository usa l'opzione removerepo come mostrato di seguito.
# zypper removerepo LOCALRPM-Repo Removing repository 'mylocalrepo' [done] Repository 'mylocalrepo' has been removed.
17. Eseguire il backup di un repository
È possibile eseguire il backup del file del repository che contiene l'elenco dei repository utilizzando l'opzione di esportazione come mostrato di seguito. Questo memorizzerà l'elenco dei repository nel file backup.repo.
# zypper lr --export /var/tmp/backup.repo Repositories have been successfully exported to /var/tmp/backup.repo.
18. Aggiungi repository da un backup
Se hai un file di repository esportato in precedenza, puoi usarlo per aggiungere nuovi repository usando il comando addrepo come mostrato di seguito.
zypper addrepo /var/tmp/backup.rep
19. Disabilita o abilita un repository
Per disabilitare il repository utilizzare l'opzione di modifica repository con il flag -d come mostrato di seguito. Questo disabiliterà il repository Mozilla.
# zypper modifyrepo -d Mozillarepo Repository 'Mozillarepo' has been successfully disabled.
Per abilitare il repository che era stato precedentemente disabilitato, usa il flag -e insieme all'opzione modifyrepo come mostrato di seguito.
# zypper modifyrepo -e Mozillarepo Repository 'Mozillarepo' has been successfully enabled.
20. Aggiorna un repository
È molto importante aggiornare un repository, quando diventa obsoleto. Puoi eseguire un aggiornamento manuale come mostrato nell'esempio seguente o impostare l'aggiornamento automatico quando necessario.
# zypper refresh Mozillarepo Repository 'Mozilla-repo' is up to date. Specified repositories have been refreshed.
Per impostare l'opzione di aggiornamento automatico per un repository specifico, utilizza il comando come mostrato nell'esempio seguente:
# zypper modifyrepo --refresh mylocalrepo Autorefresh has been enabled for repository 'mylocalrepo'.