Wenn Sie wie ich ein erfahrener Linux-Benutzer sind, sind Sie wahrscheinlich schon auf den Begriff SUSE Linux gestoßen. Es ist eine der leistungsstärksten Linux-Distributionen für Unternehmen und wird von einer Vielzahl von Unternehmen weltweit eingesetzt. Tatsächlich war SUSE die erste Linux-Distribution, die für Unternehmen vermarktet wurde. SUSE hat zwei Varianten – eine kostenlose Open-Source-Version namens openSUSE und eine kommerzielle Lösung namens SUSE Linux Enterprise. Das Befehlszeilendienstprogramm zypper ist die De-facto-Paketverwaltungslösung für diese beiden Varianten. In diesem Leitfaden stellen wir einige praktische Anweisungen zur Verwendung dieses Tools bereit.
Zypper-Befehle für OpenSUSE und SUSE Enterprise
Wir haben insgesamt 50 Zypper-Befehle ausgewählt, die für jeden nützlich sein können, der eine SUSE-Variante verwendet. Wenn Sie ein absoluter Anfänger sind, bietet dieser Leitfaden eine praktische Einführung in die Paketverwaltung in SUSE. Diejenigen unter Ihnen, die mehr Erfahrung haben, können dies für zukünftige Referenzen als Lesezeichen speichern.
1. Installieren eines Pakets
Wenn Sie neue Anwendungen in Ihrem SUSE installieren möchten, müssen Sie wahrscheinlich Pakete aus Repositorys installieren, in denen diese verfügbar sind. Der folgende einzelne Befehl kann verwendet werden, um ein frisches neues Paket zu installieren.
$ sudo zypper install git
Zypper durchsucht seine Repositorys nach dem angegebenen Paket und fährt mit der Installation fort. Es löst alle Abhängigkeitsprobleme, vorausgesetzt, die erforderlichen Pakete sind auch in Ihren Repositories verfügbar. Sie können statt install auch die Kurzform verwenden.
$ sudo zypper in git
Die heruntergeladenen Pakete werden im Verzeichnis /var/cache/zypper/source-download abgelegt.
2. Lokale Pakete installieren
Sowohl OpenSUSE als auch SUSE Linux verwenden das RPM-System als ihr Paketverwaltungssystem. Angenommen, Sie haben ein RPM-Paket mit dem Linux-Befehl wget heruntergeladen.
- -$ wget http://64.34.161.181/download/3.5.0/Linux/nxclient-3.5.0-7.x86_64.rpm
Sie können das heruntergeladene Paket mit dem Befehl zypper install installieren. Stellen Sie sicher, dass Sie den richtigen Pfad zur Datei angeben.
$ sudo zypper install nxclient-3.5.0-7.x86_64.rpm $ sudo zypper in nxclient-3.5.0-7.x86_64.rpm
3. Herunterladen von Paketen in Zypper
Manchmal möchten Sie vielleicht ein Paket herunterladen, ohne mit der Installation fortzufahren. Der Download-Befehl von Zypper erleichtert das Herunterladen von Remote-Paketen auf Ihren lokalen Rechner.
$ sudo zypper download nmap
Wenn Sie diesen Befehl ausführen, wird das Nmap-Paket auf Ihren Computer heruntergeladen, aber nicht installiert. Standardmäßig platziert Zypper lokal heruntergeladene Pakete im Verzeichnis /var/cache/zypp/packages/
4. Verfügbare Repositories anzeigen
Wie bereits erwähnt, befinden sich Pakete in Repositorys, und wenn Sie einen Download durchführen, ruft das Paketverwaltungstool die Anwendungen von dort ab. Sie können die Repository-Informationen für SUSE Linux mit einem der folgenden Zypper-Befehle anzeigen.
$ sudo zypper lr $ sudo zypper repos
Die Ausgabe enthält Informationen wie den tatsächlichen Repo-Namen, Aliase, den aktivierten Status und so weiter. Detaillierte Informationen zu den Repos erhalten Sie mit dem -d Flagge.
$ sudo zypper lr -d $ sudo zypper repos -d
Verwenden Sie das -p Option, um Repository-Prioritäten einzuschließen und danach zu sortieren.
$ sudo zypper lr -p $ sudo zypper repos -p
5. Repository hinzufügen
Sie können zusätzliche Repositorys für Ihren SUSE-Computer hinzufügen, indem Sie die folgende einfache Syntax verwenden.
zypper addrepo <options> <URI> <alias>
Der URI ist der Pfad des Repositorys und der Alias ist der Name. Die Kurzformoption für addrepo ist ar. Sehen Sie sich die folgenden Befehle an, um zu erfahren, wie Sie ein Repository in OpenSUSE und SUSE Enterprise hinzufügen.
$ sudo zypper ar http://download.opensuse.org/update/11.1/ update $ sudo zypper addrepo http://download.opensuse.org/update/11.1/ update
6. Lokale Repositories erstellen
Es ist sehr einfach, lokale Repositories mit Zypper zu erstellen. Platzieren Sie einfach alle Ihre lokalen RPM-Dateien in einem Verzeichnis und folgen Sie dann der folgenden Syntax.
zypper addrepo <Path-to-Dir> <Name-of-Repository>
Die folgenden Zypper-Befehle erstellen ein lokales Repository mit dem Namen test-repo .
$ sudo zypper ar ~/repos-dir test-repo $ sudo zypper addrepo ~/repos-dir test-repo
7. Aktualisieren von Repositories in SUSE
Sie sollten die Repository-Liste aktualisieren, nachdem Sie neue Repos hinzugefügt haben. Dies kann sehr einfach mit dem Zypper-Refresh-Befehl erfolgen.
$ sudo zypper ref $ sudo zypper refresh
Die Angabe des Repository-Namens aktualisiert nur dieses bestimmte Repository.
$ sudo zypper refresh repo-oss
Sie können einfach alle Repositories auflisten, um den Namen Ihrer verfügbaren Repositories zu erhalten. Verwenden Sie das -s oder –Dienste Option zum Aktualisieren von Diensten und Repositories. Es ist standardmäßig deaktiviert.
$ sudo zypper refresh -s $ sudo zypper refresh --services
8. Ändern von Repositories in SUSE
Zypper ermöglicht es Benutzern, Repositories unterwegs zu ändern. Sehen Sie sich die folgenden Beispiele an, um zu sehen, wie Sie den Befehl modifyrepo für solche Aufgaben verwenden können.
$ sudo zypper modifyrepo --disable 6 $ sudo zypper mr -d 6
Diese Befehle deaktivieren Repository Nummer 6. Sie können sehen, dass für die Optionen sowohl kurze als auch lange Aliase verfügbar sind.
$ sudo zypper mr -Ka
Dieser Befehl deaktiviert das Zwischenspeichern von RPM-Dateien für alle Repositories – sowohl remote als auch lokal. Sie können eine Liste aller Änderungsoptionen finden, indem Sie die folgenden Befehle verwenden.
$ sudo zypper modifyrepo --help $ sudo zypper mr --help
9. Repositories in SUSE umbenennen
Das Umbenennen von Repositories ist mit Zypper ebenfalls sehr einfach. Die folgenden Befehle veranschaulichen, wie Sie hierfür den Befehl zypper namerepo verwenden.
$ sudo zypper namerepo 6 primary $ sudo zypper nr 6 primary
Beide Befehle ändern den Namen des sechsten Repositorys in den primären. Wir können das Repository anhand seiner Nummer, seines Namens oder seiner URL angeben. Die Umbenennungsoperation funktioniert jedoch nur für die Aliase.
10. Entfernen von Repositories in SUSE
Das Entfernen eines Repositorys von Ihrem OpenSUSE-Rechner ist so einfach wie das Umbenennen. Verwenden Sie dazu einfach den Befehl removerepo des Zypper-Dienstprogramms. Die folgenden einfachen Befehle veranschaulichen, wie ein Repository namens test.
entfernt wird$ sudo zypper removerepo main $ sudo zypper rr main
Verwenden Sie den folgenden Befehl, wenn Sie nur die lokalen Repositories entfernen möchten.
$ sudo zypper removerepo --local $ sudo zypper rr -l
Verwenden Sie die folgenden Zypper-Befehle, um alle Remote-Repositories zu entfernen.
$ sudo zypper removerepo --remote $ sudo zypper rr -t
11. Paket suchen
Wenn Sie ein Paket vor der Installation suchen möchten, können Sie den Zypper-Suchbefehl verwenden. Die folgenden Befehle veranschaulichen, wie Sie das Nmap-Paket mit dieser Methode finden.
$ sudo zypper search nmap $ sudo zypper se nmap
Wenn Sie einen dieser Befehle ausführen, wird eine Liste aller verfügbaren Nmap-Pakete neben ihrem effektiven Namen, Typ und einer Zusammenfassung angezeigt. Verwenden Sie den folgenden Befehl, wenn Sie ein bereits installiertes Paket finden möchten.
$ sudo zypper search --installed-only sed $ sudo zypper se -i sed
Es gibt viele weitere Optionen, die von der Zypper-Suche unterstützt werden. Sie können sie mit dem folgenden Befehl anzeigen.
$ sudo zypper se --help
12. Anzeigen von Informationen zu einem Paket
Sie können alle verfügbaren Informationen für ein bestimmtes Linux-Paket mit dem Unterbefehl info von zypper anzeigen. Der Kurzformersatz für info ist if.
$ sudo zypper info nmap $ sudo zypper if nmap
Dieser Befehl gibt die Informationen über den Linux-Befehl nmap auf Ihrem Terminal-Display aus. Sie sollten Informationen wie Repository-Name, Quellpaket, Versionsinformationen, Status und Paketbeschreibung anzeigen. Benutzer können auch nach Paketinformationen suchen, ohne den genauen Paketnamen zu kennen.
$ sudo zypper info --match-substrings nma $ sudo zypper if -s nma
13. Pakete nach Version installieren
Zypper vereinfacht die Installation von SUSE Linux-Paketen nach Version. Auf diese Weise können Administratoren stabile Versionen von Softwarepaketen installieren, die die Benutzererfahrung wahrscheinlich nicht beeinträchtigen. Das folgende Beispiel zeigt, wie Zypper-Pakete mit einer bestimmten Version installiert werden.
$ sudo zypper in 'gcc<5.1' $ sudo zypper install 'gcc<5.1'
Die obigen Zypper-Befehle installieren die vorherige Version von GCC 5.1. Wenn Sie die genaue Version des Pakets kennen, können Sie es mit diesen Informationen installieren.
$ sudo zypper in gcc48-4.8.3+r212056-2.2.4 $ sudo zypper install gcc48-4.8.3+r212056-2.2.4
14. Pakete nach Architektur installieren
Die meisten PCs laufen heute auf der amd64- oder i386-Architektur. Wenn Sie ein 64-Bit-Betriebssystem verwenden, befinden Sie sich auf AMD64. 32-Bit-Systeme verwenden das i386-Design. Der folgende Befehl installiert GCC für die i386-Architektur.
$ sudo zypper in gcc.i386 $ sudo zypper install gcc.i386
Der folgende Befehl veranschaulicht, wie wir eine bestimmte Version eines Programms für eine erforderliche Architektur herunterladen können.
$ sudo zypper in 'gcc.i386<5.1' $ sudo zypper install 'gcc.i386<5.1'
15. Paket nach Muster installieren
Zypper ermöglicht es SUSE-Administratoren, Pakete nach einem bestimmten Muster zu suchen und zu installieren. Zunächst einmal könnten wir den Paketnamen immer mit regulären Ausdrücken angeben. Diese sollten Benutzern bekannt sein, die den grep-Befehl oder das Dienstprogramm sed unter Linux verwendet haben.
$ sudo zypper in nfs* $ sudo zypper install nfs*
Dieser Befehl installiert alle Pakete, die sich auf NFS beziehen und den Platzhalter in ihrem Namen enthalten. Folgen Sie dem Beispiel unten, um Pakete mit dem Zypper-Installationsmuster herunterzuladen und zu installieren.
$ sudo zypper in -t pattern file_server $ sudo zypper install -t pattern file_server
Dieser Befehl installiert alle Pakete, die zum Einrichten eines Dateiserversystems in SUSE erforderlich sind.
16. Installieren von Paketen aus bestimmten Repositorys
Standardmäßig findet Zypper das gewünschte Paket in allen Repositorys, in denen es verfügbar ist. Wir können den Repository-Namen jedoch explizit angeben, wenn wir möchten. Die folgenden Zypper-Befehle zeigen dies in Aktion.
$ sudo zypper in amarok upd:libxine1 $ sudo zypper install amarok upd:libxine1
Dies kann für Benutzer hilfreich sein, die Pakete aus einem bestimmten Repository installieren möchten. Beachten Sie, dass wir den Repository-Alias verwenden, um das Repository anzugeben. Das nächste Beispiel installiert den Nmap-Port-Scanner aus dem Haupt-Repository.
$ sudo zypper in nmap main $ sudo zypper install nmap main
17. Pakete gleichzeitig installieren und entfernen
SUSE Linux ermöglicht Administratoren das Installieren und Entfernen von Paketen mit einer einzigen Befehlskombination. Sehen Sie sich die folgenden Zypper-Befehle an, um zu sehen, wie es in der Praxis funktioniert.
$ sudo zypper in nano -vi $ sudo zypper install nano -vi
Wenn Sie einen der obigen Befehle kopieren und in Ihrem Linux-Terminalemulator ausführen, wird zuerst der nano-Editor installiert und dann der vi-Texteditor für Linux entfernt. Stellen Sie sicher, dass Sie über die erforderlichen Berechtigungen zum Löschen des Pakets verfügen.
18. Entfernen von Paketen in SUSE
Wenn Sie nicht mehr benötigte Anwendungen entfernen möchten, können Sie sie mit dem Befehl zypper remove von Ihrem SUSE-Rechner entfernen. Das folgende Beispiel entfernt das Apache2-Paket mit dem Dienstprogramm zypper.
$ sudo zypper rm apache2 $ sudo zypper remove apache2
Sie können auch Muster für die Auswahl der Pakete verwenden. Der folgende einfache Befehl entfernt alle Pakete, die den Dateiserver bilden.
$ sudo zypper rm -t pattern file_server $ sudo zypper remove -t pattern file_server
19. Pakete zusammen mit Abhängigkeiten entfernen
Linux-Anwendungen verwenden eine Kombination von Paketen, um ihre Funktionalitäten bereitzustellen. Daher enthält Ihr System häufig Pakete, die von einem deinstallierten Paket verwendet werden und nicht mehr benötigt werden. Sie können dieses Problem umgehen, indem Sie die Abhängigkeiten während der Paketentfernung entfernen.
$ sudo zypper rm -u apache2 $ sudo zypper remove --clean-deps apache2
Sie können also das -u verwenden oder –clean-deps Option des Befehls remove zum Entfernen von Paketabhängigkeiten in OpenSUSE oder SUSE Enterprise.
20. Aktualisieren des Systems mit Zypper
Die folgenden Zypper-Befehle veranschaulichen, wie wir alle in unserer SUSE-Distribution installierten Pakete aktualisieren können. Wir müssen den Befehl zypper update oder up verwenden, um diese Aufgabe auszuführen.
$ sudo zypper up $ sudo zypper update
Wenn Sie einen der obigen Befehle ausführen, aktualisiert Zypper alle Ihre Systempakete, sofern Updates verfügbar sind. Sie können diesen Befehl in Ihrem Linux-Crontab verwenden, um systemweite Updates zu automatisieren. Wenn Sie noch nicht wissen, wie Cron funktioniert, sehen Sie sich unsere Anleitung zu Linux-Crontab-Befehlen an.
21. Quell- und Build-Abhängigkeiten installieren
Wenn Sie eine Anwendung aus der Quelle erstellen möchten, können Sie dazu Zypper verwenden. Mit dem Befehl zypper source-install können Administratoren die Quelle sowie ihre Abhängigkeiten für SUSE-Pakete installieren. Der folgende Befehl veranschaulicht, wie das geht.
$ sudo zypper si mariadb $ sudo zypper source-install mariadb
Die obigen Befehle laden alle Pakete herunter, die zum Kompilieren des MariaDB-Datenbankverwaltungssystems für Linux erforderlich sind. Standardmäßig installiert Zypper die Quellpakete im Verzeichnis /usr/src/packages/ Ihres Dateisystems.
22. Nur Source for Packages installieren
Wenn Sie jemals in einer Situation sind, in der Sie nur die Quelle für ein Paket herunterladen möchten, nicht die Abhängigkeiten, verwenden Sie die folgenden einfachen Befehle.
$ sudo zypper in -D mariadb $ sudo zypper install -D mariadb
Diese Befehle laden nur die Quelldateien für MariaDB herunter.
23. Nur Build-Abhängigkeiten installieren
Ebenso können Sie die Build-Abhängigkeiten für ein Paket herunterladen, ohne die Anwendung sofort zu installieren. Wir werden das -d verwenden Option von zypper source-install für diese Aufgabe. Sehen Sie sich die folgenden Beispiele an, um zu sehen, was wir meinen.
$ sudo zypper si -d mariadb $ sudo zypper source-install --build-deps-only mariadb
Diese Befehle erleichtern es Administratoren auch, zu überprüfen, welche Pakete für eine bestimmte Anwendung erforderlich sind. Dies hilft, die Systemleistung zu optimieren und hilft beim Auditing.
24. Pakete im stillen Modus installieren
Der stille Modus von zypper ermöglicht es Administratoren, lange Textausgaben im Terminalbildschirm zu unterdrücken. Dies ist sehr nützlich, wenn Sie auf Remote-Computern oder Linux-Containern arbeiten. Sehen Sie sich das folgende Beispiel genau an, um zu verstehen, wie dies in der Praxis funktioniert.
$ sudo zypper --quiet in mariadb $ sudo zypper --quiet install mariadb
Wenn Sie einen der obigen Befehle ausführen, lädt Zypper das MariaDB-Paket herunter und installiert es. Es werden jedoch keine Informationen zum Paket angezeigt, sondern nur eine Bestätigung angefordert.
25. Pakete im stillen Modus entfernen
Der stille Modus funktioniert genauso für das Entfernen von Software. Der folgende einfache Befehl löscht das Apache2-Paket von der SUSE-Maschine. Es werden keine zusätzlichen Informationen über das Paket und seine Abhängigkeiten angezeigt.
$ sudo zypper –quiet rm apache2
$ sudo zypper –quiet entfernen apache2
Wenn Sie auch die Bestätigungsphase überspringen möchten, verwenden Sie das -y oder –keine Bestätigung Option des rm-Befehls. Die folgenden Zypper-Befehle zeigen dies für das MariaDB-Paket.
$ sudo zypper --quiet rm -y mariadb $ sudo zypper --quiet remove --no-confirm mariadb
26. Benutzerdefinierte Prioritäten für Repositories festlegen
Weiter oben haben wir gezeigt, wie Sie die aktiven Repositories Ihres SUSE-Rechners basierend auf ihren Prioritäten anzeigen können. Jetzt zeigen wir Ihnen, wie Sie benutzerdefinierte Prioritäten für ein SUSE-Repository festlegen. Sehen Sie sich das folgende Beispiel an, um zu erfahren, wie wir das machen.
$ sudo zypper mr -p 100 repo-oss $ sudo zypper modifyrepo --priority 100 repo-oss
Sie können die Wirkung dieses Befehls überprüfen, indem Sie den folgenden Befehl vor und nach der Ausführung des obigen Beispiels ausführen.
$ sudo zypper lr -p $ sudo zypper repos --priority
27. Aktivieren des RPM-Datei-Cachings in SUSE
Wenn Sie das Zwischenspeichern von RPM-Dateien für Ihre SUSE-Repositories aktivieren möchten, verwenden Sie das -k oder –keep-packages Option des Befehls zypper modifyrepo. Das nächste Beispiel aktiviert das RPM-Caching für alle aktiven Repositories Ihres SUSE-Rechners.
$ sudo zypper mr -ka $ sudo zypper modifyrepo --keep-packages --all
Sie können das RPM-Caching nur für bestimmte Repositories aktivieren. Geben Sie dazu den Repo-Namen an, indem Sie dessen Alias, Nummer oder URI verwenden.
$ sudo zypper mr -ka repo-non-oss $ sudo zypper modifyrepo --keep-packages 6
28. RPM-Caching nur für Remote-Repositories aktivieren
Suse-Administratoren können das Zwischenspeichern von RPM-Dateien nur für die entfernten Repositories aktivieren. Dies ist ziemlich einfach, wie im folgenden Beispielbefehl gezeigt wird.
$ sudo zypper mr -kt $ sudo zypper mr --keep-packages --remote
Der folgende Befehl aktiviert das RPM-Caching und die automatische Aktualisierung für alle entfernten SUSE-Repositories.
$ sudo zypper mr -ktf $ sudo zypper mr --keep-packages --remote --refresh
29. Installieren von LAMP Server auf SUSE
Der LAMP-Server ist ein Backend-Stack, der aus Linux(L), Apache(A), MySQL(M) und PHP(P) besteht. Sie müssen die Datenbank und die Backend-Anwendungen nicht einzeln installieren. Der folgende einfache Befehl erledigt das für Sie.
$ sudo zypper in -t pattern lamp_server $ sudo zypper install --type pattern lamp_server
Sie können einen der oben genannten Zypper-Befehle verwenden, um die erforderlichen Pakete für Ihren LAMP-Server zu installieren. Das spart Zeit und Konfigurationsaufwand.
30. Downgrade von Paketen in SUSE
Wenn Sie zu einer früheren Version eines Zypper-Pakets zurückkehren möchten, können Sie das –oldpackage Option des Befehls zypper install. Sehen Sie sich die folgenden Beispiele genau an, um zu sehen, wie es funktioniert.
$ sudo zypper in --oldpackage flash-player-gnome=11.2.202.233-15.1 $ sudo zypper install --oldpackage flash-player-gnome=11.2.202.233-15.1
Sie können auch das -f verwenden oder –zwingen Möglichkeit. Dadurch wird Zypper gezwungen, eine bestimmte Version neu zu installieren.
$ sudo zypper in -f flash-player-gnome=11.2.202.233-15.1 $ sudo zypper install --force flash-player-gnome=11.2.202.233-15.1
31. Verfügbare Updates anzeigen
Administratoren müssen ihre Pakete sorgfältig verwalten, um eine funktionierende Maschine zu erhalten. Der Befehl list-updates von zypper macht es sehr einfach herauszufinden, welche Updates für Ihren Rechner verfügbar sind. Sie können dann die erforderlichen Updates gemäß Ihren Anforderungen installieren.
$ sudo zypper lu $ sudo zypper list-updates
Die obigen Zypper-Befehle zeigen jedoch nur die Updates an, die leicht installierbar sind, d. h. Pakete, die keine Abhängigkeitsprobleme haben. Sie können –all verwenden Option, um alle verfügbaren Updates anzuzeigen.
$ sudo zypper lu -a $ sudo zypper list-updates --all
Verwenden Sie die folgenden Befehle, um Paketaktualisierungen anzuzeigen, die aus einem bestimmten Repository stammen.
$ sudo zypper lu -r repo-oss $ sudo zypper list-updates --repo repo-oss
32. Verfügbare Patches anzeigen
Sie können einen der folgenden Befehle verwenden, um eine Liste aller verfügbaren Patches für Ihren SUSE-Computer anzuzeigen. Sie zeigen Patches an, die leicht auf Ihr System anwendbar sind.
$ sudo zypper lp $ sudo zypper list-patches
Wenn Sie alle verfügbaren Patches anzeigen möchten, fügen Sie das -a hinzu oder –alle Option zu Ihrem Befehl.
$ sudo zypper lp -a $ sudo zypper list-patches --all
Die folgenden Zypper-Befehle veranschaulichen, wie Sie eine Liste aller verfügbaren Patches nach Bugzilla-Problemen und CVE-Nummern erhalten.
$ sudo zypper list-patches --bugzilla=972197 $ sudo zypper list-patches --bugzilla=CVE-2016-2315
33. Installieren von Patches in SUSE
Nachdem Sie die zum Herunterladen verfügbaren Patches angezeigt haben, können Sie sie installieren, indem Sie den folgenden Befehl ausführen. Dadurch werden alle für Ihren OpenSUSE- oder SUSE Enterprise-Computer erforderlichen Patches installiert.
$ sudo zypper patch
Sie können die Option –auto-agree-with-licenses verwenden, um Patches ohne vorherige Bestätigung zu installieren.
$ sudo zypper patch --auto-agree-with-licenses
Fügen Sie das -D hinzu oder –Trockenlauf markieren, um anzuzeigen, was Zypper tun wird, ohne die Änderungen direkt anzuwenden.
$ sudo zypper patch -D $ sudo zypper patch -dry-run
34. Benutzerdaten zu Protokollen hinzufügen
Die globale –userdata Option ermöglicht es Administratoren, eine Zeichenfolge anzugeben, die in die Protokolldatei von zypper geschrieben wird. Dies hilft Ihnen, Zypper-Transaktionen im Protokoll zu markieren und zu identifizieren und von ZYpp-Plugins verwendet zu werden.
$ sudo zypper --userdata security-patch patch
Der obige Befehl fügt den Text „Sicherheitspatch“ für diese spezifische Transaktion an die Protokolldatei von Zypper an. Es wird Ihnen helfen, Ihren Zypper-Workflow zu verfolgen und zu dokumentieren, warum bestimmte Befehle verwendet wurden.
35. Zypper in Skripten verwenden
Wenn Sie Zypper in Linux-Shell-Skripten verwenden möchten, verwenden Sie die globale Option –non-interactive vor Ihrem Unterbefehl. Dies unterdrückt jegliche Sicherheitsabfrage und funktioniert somit problemlos auch aus Skripten heraus.
$ sudo zypper --non-interactive in nmap $ sudo zypper --non-interactive install nmap
Darüber hinaus bieten viele Zypper-Befehle diese Funktionalität mit dem -y oder –keine Bestätigung Möglichkeit. Sie können sie auch verwenden, wenn Sie Zypper innerhalb von Shell-Skripten verwenden.
$ sudo zypper install -y nmap $ sudo zypper remove --no-confirm vim
36. Überprüfen der Paketabhängigkeiten mit Zypper
Sie können den Befehl zypper verify verwenden, um zu überprüfen, ob alle Abhängigkeiten für Ihre installierten Pakete erfüllt sind oder nicht. Die Ausgabe zeigt auch an, ob bestimmte Pakete installiert oder entfernt werden sollen, um Abhängigkeiten aufrechtzuerhalten.
$ sudo zypper ve $ sudo zypper verify
Fügen Sie die –Details hinzu Flag zu den obigen Zypper-Befehlen hinzufügen, wenn Sie zusätzliche Informationen über Ihre Abhängigkeiten anzeigen möchten.
$ sudo zypper ve --details $ sudo zypper verify --details
37. Installieren von Patches für Zypper
Der –updatestack-only Option des Befehls zypper patch ermöglicht es Administratoren, Patches nur für das Paketverwaltungstool zypper zu installieren. Dies ist nützlich, wenn Ihr Paketverwaltungssystem defekt ist oder wichtige Pakete fehlen.
$ sudo zypper patch --updatestack-only
Wenn Sie jedoch den obigen Befehl verwenden, werden die anderen Befehlsoptionen gelöscht, die normalerweise alle anderen Zypper-Repositories aktualisieren würden.
38. Verwaiste Pakete anzeigen
Wenn Sie eine Anwendung entfernen, ohne die Pakete zu entfernen, war sie von ihnen abhängig, und diese Abhängigkeiten werden zu verwaisten Paketen. Sie nehmen nicht nur Speicherplatz in Anspruch, sondern können auch andere Probleme verursachen. Mit dem folgenden einfachen Befehl können Sie eine Liste aller dieser SUSE-Pakete anzeigen.
$ sudo zypper packages --orphaned
Die Ausgabe dieses Befehls kann Benutzern dabei helfen festzustellen, ob sie bestimmte Pakete noch benötigen oder sie ganz entfernen sollten.
39. Anzeigen von Prozessen, die gelöschte Dateien verwenden
Während des Aktualisierens oder Entfernens von Paketen kann Zypper bestimmte Dateien löschen, die noch von einigen anderen Prozessen verwendet werden. Sie können den Befehl zypper ps verwenden, um solche Prozesse aufzulisten.
$ sudo zypper ps
Dadurch wird eine Liste von Prozessen angezeigt, die gelöschte Dateien und die Dateinamen verwenden. Sie können die Prozesse dann einfach neu starten. Beim Neustart werden die neuen Dateien verwendet. Verwenden Sie den folgenden Befehl, um nur Systemprozesse anzuzeigen, die gelöschte Dateien verwenden.
$ sudo zypper ps-ss
40. Suchen von Paketen nach Fähigkeiten
Zypper macht es sehr einfach, Pakete zu finden, die bestimmte Funktionalitäten bieten. Verwenden Sie einfach die globale Option what-provides, um herauszufinden, welches Paket ein bestimmtes Modul bereitstellt.
$ sudo zypper what-provides 'perl(SVN::Core)'
Dieser Befehl zeigt den Paketnamen an, der das Perl-Modul „SVN::Core“ anbietet. Es ist sehr ähnlich zu rpm -q –whatprovides. Im Gegensatz zum rpm-Befehl kann die Zypper-Version jedoch anzeigen, welche Remote-Pakete die gewünschten Fähigkeiten bereitstellen.
41. Erforderliche/empfohlene Module anzeigen
Benutzer können den Befehl zypper info verwenden, um anzuzeigen, welche Module für ein SUSE-Paket erforderlich oder empfohlen sind. Das folgende Beispiel zeigt die erforderlichen Module für das MozillaFirefox-Paket.
$ sudo zypper if --requires MozillaFirefox $ sudo zypper info --requires MozillaFirefox
Sie müssen die –recommends verwenden Flag, um die empfohlenen Module für MozillaFirefox anzuzeigen. Der folgende Befehl veranschaulicht dies.
$ sudo zypper if --recommends MozillaFirefox $ sudo zypper info --recommends MozillaFirefox
42. Verwenden der Zypper-Shell
Die Zypper-Shell ist eine interaktive Schnittstelle zum ZYpp-Paketmanager. Es ermöglicht Administratoren, SUSE-Pakete mithilfe einer intuitiven Shell-Sitzung zu verwalten und zu konfigurieren. Sie können eine Zypper-Shell öffnen, indem Sie den folgenden einfachen Befehl verwenden.
$ sudo zypper sh $ sudo zypper shell
Hier können Sie standardmäßige Zypper-Befehle zum Verwalten Ihrer Anwendungen eingeben. Geben Sie einfach help in diese interaktive Shell ein, wenn Sie alle verfügbaren Optionen und ihre Funktionalitäten sehen möchten.
43. XML-Ausgabe für Zypper generieren
Die globale Option -x oder –xmlout ermöglicht Administratoren, die Ausgabe von Zypper-Befehlen im XML-Format zu drucken. Dies ist sehr nützlich für grafische Frontends, die Zypper verwenden, oder für Dokumentationszwecke.
$ sudo zypper -x $ sudo zypper --xmlout
Die obigen Befehle zeigen die Ausgabe in einem XML-Format an. Sie können die vom obigen Befehl generierte Ausgabe einfach in eine Datei zum Speichern umleiten.
$ sudo zypper --xmlout > output
44. Reinigung von Zypper-Caches
Der Befehl zypper clean hilft Benutzern dabei, den lokalen Cache für alle oder ausgewählte Repositories zu bereinigen. Standardmäßig werden jedoch nur die Caches der heruntergeladenen Pakete gelöscht.
$ sudo zypper cc $ sudo zypper clean
Der folgende Befehl bereinigt sowohl die Repository-Metadaten als auch den Paket-Cache für das Repository repo-oss.
$ sudo zypper clean --all repo-oss
45. Aktualisieren von SUSE mit Zypper
Wenn Sie Ihre OpenSUSE- oder SUSE Enterprise-Distribution auf eine neue Version aktualisieren möchten, verwenden Sie einfach den dist-upgrade-Unterbefehl von zypper.
$ sudo zypper dup $ sudo zypper dist-upgrade
Der obige Befehl wendet den Status aller aktiven Repositories an und installiert, aktualisiert oder stuft Pakete nach Bedarf für die Zielversion Ihrer Distribution herunter.
46. Repositories importieren und exportieren
Sie können Ihre Zypper-Repositories in und aus einer Datei importieren und exportieren. Die folgenden Befehle veranschaulichen, wie alle definierten Repositories in eine Datei namens backups/repos/foo.repo exportiert werden .
$ sudo zypper --export backups/repos/foo.repo $ sudo zypper lr --export backups/repos/foo.repo
Anschließend können Sie die Repositories importieren, indem Sie den Befehl addrepo von zypper verwenden. Der nächste Befehl zeigt Benutzern, wie die Repositories aus der Datei importiert werden, in die wir exportiert haben.
$ sudo zypper ar backups/repos/foo.repo $ sudo zypper addrepo backups/repos/foo.repo
47. Anzeigen gesperrter Pakete
Zypper erlaubt Administratoren, Pakete auf ihrem SUSE-Rechner zu sperren. Dadurch wird verhindert, dass diese Pakete entfernt oder aktualisiert werden, bis die Sperren entfernt wurden. Sie können den folgenden Zypper-Befehl verwenden, um eine Liste aller gesperrten Pakete anzuzeigen.
$ sudo zypper ll $ sudo zypper locks
Wenn ein Linux-Benutzer versucht, diese gesperrten Pakete zu installieren, zu aktualisieren oder zu entfernen, wird er in einem Dialog darüber informiert, dass die Abhängigkeit das Problem löst. Daher können Paketsperren Benutzern helfen, eine bestimmte Version von Paketen für ihr System zu verwalten.
48. Hinzufügen und Entfernen von Paketsperren
Sie können eine neue Paketsperre hinzufügen, indem Sie den Befehl addlock von zypper verwenden. Das folgende Beispiel zeigt Benutzern, wie das Haupt-Repository mit dieser Methode gesperrt wird.
$ sudo zypper al MozillaFirefox $ sudo zypper addlock MozillaFirefox
Um die Sperre von einem Paket zu entfernen, verwenden Sie den Befehl removelock. Es benötigt auch eine Sperrnummer, die durch Ausführen des Befehls zypper locks abgerufen werden kann.
$ sudo zypper rl MozillaFirefox $ sudo zypper rl MozillaFirefox
49. Aufrufen der Hilfeseite
Die Hilfeseite der Linux-Terminalbefehle bietet eine großartige Möglichkeit, einen Befehl nachzuschlagen. Es enthält zusammengefasste Informationen zu allen möglichen Optionen und deren Eigenschaften. Der Hilfeabschnitt in zypper kann einfach durch Ausführen des zypper-Befehls aufgerufen werden.
$ sudo zypper
Es listet alle verfügbaren globalen Optionen und Befehle auf, die vom Paketmanager bereitgestellt werden. Sie können Hilfeinformationen für bestimmte Zypper-Befehle erhalten, indem Sie Folgendes verwenden.
$ sudo zypper help install $ sudo zypper update --help
50. Aufrufen der Manpage
Die Manpage oder das Handbuch enthält ausführliche Informationen zu Linux-Programmen. Von dort aus können Sie alles lernen, was Sie über einen Befehl wissen müssen. Die Manpage von zypper kann wie folgt aufgerufen werden.
$ sudo man zypper
Dadurch wird das Handbuch gedruckt, das die verfügbaren Befehlszeilenoptionen und die Verwendung der Optionen zeigt.
Abschlussgedanken
Wir haben in diesem Handbuch viele nützliche Zypper-Befehle behandelt. Diese sollten mehr als genug für jeden sein, der SUSE zum ersten Mal in seinem Leben ausprobiert. Wenn Sie ein professioneller Systemadministrator sind, der mit einer Vielzahl von Linux-Distributionen arbeitet, kann dies außerdem eine Menge Zeit sparen. So, make sure to bookmark this guide for the future and let us know your thoughts about the overall guide in the comment section. Hopefully, the above commands will make your transition from a different system to SUSE much more smooth.