Rosettastein Paketverwaltung
Dieser Artikel beschreibt unterschiedliche Möglichkeiten der Paketverwaltung unter Linux. Analog zum historisch belegten Rosettastein werden Anweisungen in mehreren Sprachen nebeneinander gestellt. In diesem Fall sind es Anweisungen in der „Sprache“ verschiedener Distributionen.
AnwenderInnen anderer Distributionen können von Pacman durch die Verwendung eines einfachen Hüllskriptes pacapt profitieren. Dieses Skript ist in Bash geschrieben und kann auch von Arch-NutzerInnen verwendet werden, die mit Paketformaten anderer Distributionen umgehen müssen.
Grundlegende Befehle
Arch | Red Hat, Fedora | Debian, Ubuntu | SLES, openSUSE | Gentoo | Beschreibung |
pacman -S | dnf install | apt install | zypper install zypper in
|
emerge [-a] | Eines oder mehrere angegebene Pakete installieren. |
pacman -Rs | dnf remove | apt remove | zypper remove zypper rm
|
emerge -C | Eines oder mehrere angegebene Pakete deinstallieren. |
pacman -Ss | dnf search | apt search | zypper search zypper se [-s]
|
emerge -S | Paketsuche anhand eines Ausdrucks im Namen oder der Kurzbeschreibung. Welche Info-Felder standardmäßig durchsucht werden, hängt vom jeweiligen Tool der Distribution ab. |
pacman -Syu | dnf upgrade | apt update && apt upgrade | zypper update zypper up
|
emerge -u world | Führt eine Aktualisierung aller installierten Pakete aus. |
pacman -Syu | dnf distro-sync | apt update && apt dist-upgrade | zypper dup | emerge -uDN world | Andere Form des obigen Befehls zur Umsetzung komplexerer Aufgaben, z.B. für eine distributionsweite Aktualisierung. Während der obige Befehl Pakete nicht aktualisiert, bei denen sich Abhängigkeiten geändert haben, führt diese Form auch solche Aktualisierungen durch. |
pacman -Sc pacman -Scc
|
dnf clean all | apt autoclean apt clean
|
zypper clean | eclean distfiles | Bereinigt den lokalen Paket-Cache. Optionen können beschränken, was tatsächlich gereinigt wird. 'apt autoclean' entfernt nur unnötige veraltete Pakete, für die es neuere Pakete im entsprechenden Repo gibt. |
pacman - Qdtq | pacman -Rs - | dnf autoremove | apt autoremove | zypper rm -u | emerge --depclean | Entfernt Abhängigkeiten, die nicht (mehr) benötigt werden – z.B. weil das die Abhängigkeit erfordernde Paket zuvor entfernt worden ist. |
pacman -Qmq | pacman -Rs - | package-cleanup --orphans | aptitude purge '~o' | Entfernt Pakete, die nicht (mehr) in den Repos enthalten sind. Vorsicht, der Pacman-Befehl entfernt auch die aus dem AUR installierten Pakete. | ||
pacman -D --asexplicit | dnf mark install | apt-mark manual | emerge --select | Setzt den Status eines als Abhängigkeit installierten Paketes auf „Ausdrücklich installiert“. | |
pacman -S --asdeps | dnf install => dnf mark remove | apt-mark auto | emerge -1 | Paket(e) ausdrücklich installieren und den Status auf „Als Abhängigkeit installiert“ setzen. | |
pacman -Sw | dnf download | apt install --download-only apt download
|
zypper --download-only | emerge --fetchonly | Paket(e) herunterladen, ohne sie zu entpacken oder zu installieren. 'apt install --download-only' Lädt ein Paket inkl. Abhängigkeiten in den Paket-Cache, 'apt download' lädt es ohne Abhängigkeiten in das aktuelle Verzeichnis. |
apt-config shell | zypper shell | Eine Shell starten, um auf Konfigurationsinformationen zuzugreifen. | |||
cat /var/log/pacman.log | dnf history | cat /var/log/dpkg.log | cat /var/log/zypp/history | located in /var/log/portage | Inhalte der Logdatei der Paketverwaltung anzeigen. |
Abfragen einzelner Pakete
Arch | Red Hat, Fedora | Debian, Ubuntu | SLES, openSUSE | Gentoo | Beschreibung |
pacman -Qi pacman -Si
|
dnf list dnf info
|
apt show apt-cache policy
|
zypper info zypper if
|
emerge -S emerge -pv eix
|
Umfassende Informationen zu einem Paket anzeigen. |
pacman -Qi | rpm -qi | dpkg -s aptitude show
|
zypper info | emerge -pv emerge -S
|
Umfassende Informationen zu einem installierten Paket anzeigen (Version, Beschreibung etc.). |
pacman -Si | dnf info | apt-cache show aptitude show
|
zypper info | emerge -pv emerge -S
|
Abfrage von Informationen zu einem Paket, das nicht installiert ist (Version, Beschreibung, Abhängigkeiten etc.). |
pacman -Ql | rpm -ql | dpkg -L | zypper info | equery files | Anzeigen von Dateien, die von einem installierten Paket bereitgestellt werden. |
pacman -Fl | dnf repoquery -l repoquery -l
|
apt-file list <Suchmuster> | pfl | Anzeigen von Dateien, die von einem nicht installierten Paket bereitgestellt werden. | |
pacman -Qo <Dateipfad> pacman -Fo <Dateipfad>
|
dnf provides rpm -qf repoquery -f
|
dpkg -S dlocate
|
zypper search -f | equery belongs | Suche nach dem Paket, welches eine bestimmte Datei beinhaltet. |
pacman -Fs | dnf provides | apt-file search auto-apt
|
zypper search -f | equery belongs | Alle Pakete (installiert oder nicht installiert) nach einer beinhaltenden Datei durchsuchen. |
pacman -Qc | rpm -q --changelog | apt-get changelog | rpm -q --changelog | equery changes -f | Anzeigen des Änderungsprotokolls eines Pakets. |
Abfragen von Paketlisten
Arch | Red Hat, Fedora | Debian, Ubuntu | SLES, openSUSE | Gentoo | Beschreibung |
pacman -Ss | dnf search | apt search | zypper search zypper se
|
emerge -S | In den Repos vorhandene Pakete nach Suchmustern in Name oder Beschreibung durchsuchen. |
pacman -Sy && pacman -Qu checkupdates
|
dnf list updates dnf check-update
|
apt-get upgrade -> n | zypper list-updates zypper patch-check
|
emerge -uDNp world | Listet Pakete auf, für die Updates vorhanden sind. |
pacman -Sl | dnf list available | apt-cache dumpavail apt-cache pkgnames
|
zypper packages | emerge -ep world | Zeigt eine Liste aller von der Paketverwaltung organisierten Repositorien und die darin enthaltenen Pakete an. |
pacman -Q | dnf list installed | dpkg --list | grep ^i | zypper search --installed-only | emerge -ep world | Zeigt eine Liste aller installierten Pakete inklusive Versionsnummer an. |
pacman -Qm | dnf list extras | deborphan | zypper se -si | grep 'System Packages' | eix-test-obsolete | Pakete auflisten, die zwar installiert, aber nicht (mehr) in den Repositorien vorhanden sind. |
dnf list recent | aptitude search ~N aptitude forget-new
|
eix-diff | Pakete auflisten, die in den Repos neu hinzugekommen sind. | ||
pacman -Qs <Muster> | rpm -qa '*<Muster>*' | aptitude search '~i(~n<Name> | ~d<Beschrbg>)' | eix -S -I | Installierte Pakete nach Namen oder Beschreibung (als Suchmuster) durchsuchen. | |
pacman -Qt | package-cleanup --all --leaves | deborphan -anp1 | Zeigt Paketen, die zwar installiert, aber nicht (mehr) in den Repositorien vorhanden sind. | ||
pacman -Qe | dnf history userinstalled | apt-mark showmanual | Liste der Pakete anzeigen, die nicht als Abhängigkeit, sondern ausdrücklich installiert worden sind. |
Abfragen von Paketabhängigkeiten
Arch | Red Hat, Fedora | Debian, Ubuntu | SLES, openSUSE | Gentoo | Beschreibung |
pacman -Sii | dnf repoquery --alldeps --whatrequires | apt-cache rdepends aptitude search ~D<Muster>
|
zypper search --requires | equery depends | Auflisten, welche anderen Pakete das Paket <Muster> benötigen (sogenannte Rückwärtsabhängigkeit). |
dnf repoquery --conflicts | aptitude search ~C<Muster> | Anzeigen von Paketen, die mit dem angegebenen Paket <Muster> in Konlikt stehen. | |||
pacman -Si pacman -Qi
|
dnf repoquery --requires | apt-cache depends apt-cache show
|
zypper info --requires | emerge -ep | Pakete anzeigen, die für das angegebene Paket als Abhängigkeit benötigt werden. |
dnf provides | aptitude show dpkg -s/div>
|
Pakete anzeigen, die das angegebenen Paket bereitstellt. | |||
dnf repoquery --alldeps --whatrequires | aptitude why | zypper search --requires | equery depends -a | Alle Pakete auflisten, die das angegebene Paket als Abhängigkeit benötigen. |