Hier werden die Unterschiede zwischen zwei Versionen gezeigt.
| Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung Nächste Überarbeitung | Vorherige Überarbeitung | ||
|
admin_grundlagen:paketverwaltung [2012/10/30 06:09] ingo_wichmann |
admin_grundlagen:paketverwaltung [2025/09/18 09:03] (aktuell) ingo_wichmann |
||
|---|---|---|---|
| Zeile 23: | Zeile 23: | ||
| rpm -ql procps | rpm -ql procps | ||
| | | | | ||
| - | |Paket installieren (( das macht man normalerweise mit //apt-get//, //yum//, //zypper// oder //yast// )): | | + | |Paket installieren (( das macht man normalerweise mit //[[#repository_basierte_paketverwaltung|apt]]//, //[[#repository_basierte_paketverwaltung|dnf]]//, //[[#repository_basierte_paketverwaltung|zypper]]// oder //[[#repository_basierte_paketverwaltung|yast]]// )): | |
| dpkg -i xskat_4.0-1_i386.deb | dpkg -i xskat_4.0-1_i386.deb | ||
| | | | | ||
| rpm -i datei.rpm | rpm -i datei.rpm | ||
| | | | | ||
| - | |Paket loeschen: (( auch das geht mit //apt-get//, //yum//, //zypper// oder //yast// )) | | + | |Paket löschen: (( auch das geht mit //[[#repository_basierte_paketverwaltung|apt]]//, //[[#repository_basierte_paketverwaltung|dnf]]//, //[[#repository_basierte_paketverwaltung|zypper]]// oder //[[#repository_basierte_paketverwaltung|yast]]// )) | |
| - | dpkg --remove paket | + | dpkg --remove <paket> |
| - | dpkg --purge paket | + | dpkg --purge <paket> |
| | | | | ||
| rpm -e <paket> | rpm -e <paket> | ||
| | | | | ||
| + | |||
| + | ^Funktion ^Debian und Ubuntu ^RedHat, Fedora und SuSE (( OK, rpm ist auch für debian verfügbar, aber sollte da nur in besonderen Fällen eingesetzt werden )) | | ||
| |Pakete nach Größe sortiert ausgeben: | | |Pakete nach Größe sortiert ausgeben: | | ||
| - | dpkg-query -W --showformat='${Installed-Size} ${Package}\n' | sort -n | + | dpkg-query -W --showformat='${Installed-Size} \ |
| + | ${Package}\n' | sort -n | ||
| | | | | ||
| rpm -qa --queryformat '%{SIZE} %{NAME}\n' | sort -n | rpm -qa --queryformat '%{SIZE} %{NAME}\n' | sort -n | ||
| | | | | ||
| - | |Geaenderte Dateien suchen | | + | |Geänderte Dateien suchen | |
| debsums -e procps | debsums -e procps | ||
| | | | | ||
| Zeile 48: | Zeile 51: | ||
| | | | | ||
| rpm -qac --dump | perl -naF'\s+' -e 'print $F[0], $/ if -f $F[0] and not -l $F[0] and (split /\s+/, `md5sum $F[0]`)[0] ne $F[3]' | rpm -qac --dump | perl -naF'\s+' -e 'print $F[0], $/ if -f $F[0] and not -l $F[0] and (split /\s+/, `md5sum $F[0]`)[0] ne $F[3]' | ||
| + | | | ||
| + | | Konfigurationsdatei wiederherstellen | | ||
| + | cd /var/cache/apt/archives/ | ||
| + | dpkg -i --force-confmiss dokuwiki_0.0.20120125b-2_all.deb | ||
| | | | | ||
| | Zuletzt installierte Pakete anzeigen: | | | Zuletzt installierte Pakete anzeigen: | | ||
| Zeile 58: | Zeile 65: | ||
| | | | | ||
| - | ==== Abhängigkeiten (rpm) ==== | + | ==== Abhängigkeiten ==== |
| - | Von welchen Eigenschaften hängt das Paket //cups-libs// ab? | + | === rpm === |
| + | Von welchen Eigenschaften hängt das Paket //cups// ab? | ||
| rpm -q --requires cups | rpm -q --requires cups | ||
| - | Welche Eigenschaften stellt das Paket //cups-libs// anderen Paketen zur Verfügung? | + | Welche Eigenschaften stellt das Paket //systemd// anderen Paketen zur Verfügung? |
| - | rpm -q --provides paket | + | rpm -q --provides systemd |
| - | Welche Pakete hängen von der Eigenschaft //libcups.so.2// ab? | + | Welche Pakete hängen von //cups// ab? |
| - | rpm -q --whatrequires libcups.so.2 | + | rpm -q --whatrequires cups |
| - | Welches Paket stellt die Eigenschaft //libcups.so.2// zur Verfügung? | + | Welches Paket stellt die Eigenschaft //syslog// zur Verfügung? |
| - | rpm -q --whatprovides libcups.so.2 | + | rpm -q --whatprovides syslog |
| - | Bei //dpkg// sind Pakete direkt von anderen Paketen abhängig. | + | === dpkg und apt === |
| + | Von welchen Paketen ist das Paket //cups// abhängig? | ||
| + | apt-cache depends cups | ||
| + | Welche Pakete sind vom Paket //cups// abhängig? | ||
| + | apt-cache rdepends cups | ||
| ====== Repository basierte Paketverwaltung ====== | ====== Repository basierte Paketverwaltung ====== | ||
| - | ===== apt, yum und zypper ===== | + | ===== apt, dnf und zypper ===== |
| ^Funktion^Debian ^RedHat ^SuSE ^ | ^Funktion^Debian ^RedHat ^SuSE ^ | ||
| - | |Repositories einbinden | | + | |Repositories einbinden | ''/etc/apt/sources.list'' \\ ''/etc/apt/sources.list.d/*.list'' | |
| - | apt-setup | + | yum-config-manager |
| - | ''/etc/apt/sources.list'' | ''/etc/yum.repos.d/*.repo'' | ''/etc/zypp/repos.d/*.repo'' | | + | oder ''/etc/yum.repos.d/*.repo'' | ''/etc/zypp/repos.d/*.repo'' \\ ''zypper addrepo https:/...'' | |
| |Repository-Daten aktualisieren| | |Repository-Daten aktualisieren| | ||
| - | aptitude update | + | apt update |
| | | | | ||
| - | yum check-update | + | dnf check-update |
| | | | | ||
| zypper refresh | zypper refresh | ||
| | | | | ||
| - | |nach Updates suchen | | + | |Updates einspielen | |
| - | apt-get -s update | + | apt upgrade |
| | | | | ||
| - | yum check-update | + | dnf upgrade |
| | | | | ||
| - | zypper list-updates | + | zypper update |
| | | | | ||
| - | |Updates einspielen | | + | |Distributions upgrade | |
| - | aptitude safe-upgrade | + | apt dist-upgrade |
| + | Ubuntu: | ||
| + | do-release-upgrade | ||
| | | | | ||
| - | yum update | + | _ |
| | | | | ||
| - | zypper update | + | zypper dup |
| | | | | ||
| |Nach Paketen suchen| | |Nach Paketen suchen| | ||
| - | aptitude search suchwort | + | apt search suchwort |
| - | apt-cache search suchwort | + | |
| | | | | ||
| - | yum search suchwort | + | dnf search suchwort |
| - | yum list | grep paketname | + | dnf list | grep paketname |
| | | | | ||
| zypper search suchwort | zypper search suchwort | ||
| | | | | ||
| |Beschreibung zu einem Paket anzeigen:| | |Beschreibung zu einem Paket anzeigen:| | ||
| - | aptitude show paketname | + | apt show paketname |
| | | | | ||
| - | yum info paketname | + | dnf info paketname |
| | | | | ||
| zypper info paketname | zypper info paketname | ||
| | | | | ||
| |Paket installieren| | |Paket installieren| | ||
| - | aptitude install paketname | + | apt install paketname |
| - | apt-get install paketname | + | |
| | | | | ||
| - | yum install paketname | + | dnf install paketname |
| | | | | ||
| zypper install paketname | zypper install paketname | ||
| | | | | ||
| + | |Paket erneut installieren| | ||
| + | apt-get install --reinstall paketname | ||
| + | apt reinstall paketname | ||
| + | | | ||
| + | dnf reinstall paketname | ||
| + | | TODO | | ||
| |Paket entfernen| | |Paket entfernen| | ||
| - | aptitude remove paketname | + | apt remove paketname |
| - | aptitude purge paketname | + | apt purge paketname |
| - | apt-get remove [--purge] paketname | + | |
| | | | | ||
| - | yum remove paketname | + | dnf remove paketname |
| | | | | ||
| - | |Paket für Datei ''samba.schema'' im Repository suchen| | + | zypper remove paketname |
| - | apt-file update; apt-file search samba.schema | + | |
| - | | | + | |
| - | yum provides */samba.schema | + | |
| | | | | ||
| - | ==== Abhängigkeiten (dpkg und apt) ==== | + | |Überflüssige Pakete entfernen| |
| - | Von welchen Paketen ist das Paket //cups// abhängig? | + | apt autoremove |
| - | apt-cache depends cups | + | apt --purge autoremove |
| - | Welche Pakete sind vom Paket //cups// abhängig? | + | |
| - | apt-cache rdepends cups | + | |
| - | + | ||
| - | ==== yast, y2pmsh, rug und zypper ==== | + | |
| - | YaST, y2pmsh, rug und zypper sind nur für SuSE verfügbar. | + | |
| - | + | ||
| - | ^Funktion ^y2pmsh ( SuSE 9.2 bis 10.1 / SLES 9 & 10 ) (( nicht offiziell unterstützt - aber brauchbar )) ^rug ( SuSE 10.1 bis 10.2 / SLES 10 ) ^zypper ( ab SuSE 10.2) | | + | |
| - | | Repositories einbinden | | + | |
| - | y2pmsh source --add http://suse/i386/update/10.1 | + | |
| - | oder | + | |
| - | y2pmsh source -a http://suse/i386/update/10.1 | + | |
| - | | | + | |
| - | rug service-add -t zypp http://suse/i386/update/10.1 | + | |
| - | oder | + | |
| - | rug sa -t zypp http://suse/i386/update/10.1 | + | |
| | | | | ||
| - | zypper service-add http://suse/i386/update/10.3 | + | dnf autoremove |
| - | oder | + | |
| - | zypper service-add http://suse/i386/update/10.3 | + | |
| | | | | ||
| - | |Repository-Daten aktualisieren| | + | :?: |
| - | | + | |
| | | | | ||
| - | rug refresh | + | |Paket für Datei ''samba.schema'' im Repository suchen| |
| + | apt-file update | ||
| + | apt-file search samba.schema | ||
| + | | | ||
| + | dnf provides */samba.schema | ||
| | | | | ||
| - | zypper refresh | + | zypper search -d pstree |
| - | | | + | |
| - | |Updates einspielen | | + | |
| - | y2pmsh upgrade | + | |
| - | y2pmsh commit | + | |
| - | | | + | |
| - | rug update | + | |
| - | | | + | |
| - | zypper update | + | |
| - | | | + | |
| - | |Nach Paketen suchen| | + | |
| - | y2pmsh search suchwort | + | |
| - | | | + | |
| - | rug search suchwort | + | |
| - | | | + | |
| - | zypper search suchwort | + | |
| - | | | + | |
| - | |Paketbeschreibung anzeigen:| | + | |
| - | y2pmsh show paketname | + | |
| - | | | + | |
| - | rug info paketname | + | |
| - | | | + | |
| - | zypper info paketname | + | |
| - | | | + | |
| - | |Paket installieren| | + | |
| - | y2pmsh isc paketname | + | |
| - | oder | + | |
| - | y2pmsh install paketname | + | |
| - | y2pmsh solve | + | |
| - | y2pmsh commit | + | |
| - | | | + | |
| - | rug install paketname | + | |
| - | | | + | |
| - | zypper install paketname | + | |
| - | | | + | |
| - | |Paket entfernen| | + | |
| - | y2pmsh remove paketname | + | |
| - | y2pmsh solve | + | |
| - | y2pmsh commit | + | |
| - | | | + | |
| - | rug remove paketname | + | |
| - | | | + | |
| - | zypper remove paketname | + | |
| | | | | ||
| + | ====== Zusätzliche Repositories ====== | ||
| + | ===== Debian ===== | ||
| + | ==== extrepo ==== | ||
| + | Docker CE über Extrepo installieren: | ||
| + | apt install extrepo | ||
| + | extrepo search docker | ||
| + | extrepo enable docker-ce | ||
| + | apt update | ||
| + | apt policy docker-ce | ||
| + | apt install docker-ce | ||
| - | Die Paketverwaltung von YaST baut bis SuSE 10.0 / SLES 9 auf dem Programm ''y2pmsh'' auf, daß man hier auch an Stelle von yast benutzen kann. ''y2pmsh'' hat auch einen interaktiven Modus: einfach starten, und die oben angegebenen Befehle funktionieren incl. Tab-Completion | + | ==== andere Drittanbieter ==== |
| - | y2pmsh/YaST/rug/zypper bietet die Möglichkeit verschiedene Repositories einzubinden. Eine Liste verfügbarer Repositories findet sich hier: http://www.opensuse.org/Additional_YaST_Package_Repositories | ||
| - | |||
| - | Hier ist beschrieben, wie man ein lokales Repository für YaST erstellt: http://en.opensuse.org/Network_Installation_Source | ||
| - | ===== Neues Repository samt Schlüssel zu Debian hinzufügen ===== | ||
| Adresse des Repositories zu ''/etc/apt/sources.list.d'' hinzufügen. | Adresse des Repositories zu ''/etc/apt/sources.list.d'' hinzufügen. | ||
| Zeile 221: | Zeile 185: | ||
| Mit ''gnupg --export --armor keyId'' wird ein Schlüssel aus einem privaten Schlüsselbund auf stdout exportiert. | Mit ''gnupg --export --armor keyId'' wird ein Schlüssel aus einem privaten Schlüsselbund auf stdout exportiert. | ||
| - | ===== Dokumentation ===== | + | ====== SLES 15 Moduloperationen ====== |
| - | [[ http://docs.fedoraproject.org/yum/en/ | Fedora ]] | + | Welche Module sind aktiviert? |
| - | [[ http://docs.redhat.com/docs/en-US/Red_Hat_Enterprise_Linux/6/html/Deployment_Guide/ch-yum.html | RedHat ]] | + | SUSEConnect -s |
| - | [[ http://www.debian.org/doc/manuals/apt-howto/index.de.html | Debian ]] | + | Suche in allen Modulen |
| - | [[ http://de.opensuse.org/Paketverwaltung | openSuSE ]] | + | zypper search-packets <name> |
| - | [[http://yum.baseurl.org/wiki/Guides| yum]] | + | ====== apt-cacher-ng ====== |
| + | Debian-Wiki: https://wiki.debian.org/AptCacherNg | ||
| - | ====== Zusätzliche Repositories ====== | + | == Server Config == |
| - | ===== Debian ===== | + | apt install apt-cacher-ng |
| - | * http://backports.org - neuere Versionen vieler Pakete für Debian stable | + | dpkg-reconfigure apt-cacher-ng -p low |
| - | * http://deb-multimedia.org/ - Software und Codecs für Multimedia | + | |
| - | ===== Ubuntu ===== | + | == Client Config == |
| - | * http://getdeb.net | + | <file txt /etc/apt/apt.conf.d/proxy> |
| - | * http://www.medibuntu.org/ | + | Acquire::http { Proxy "http://proxy:3142"; } |
| + | </file> | ||
| - | ===== RedHat / Centos / Scientific Linux ===== | + | proxy durch IP oder host ersetzen. |
| - | * http://wiki.centos.org/Repositories | + | |
| - | ===== openSuSE ===== | + | :?: Wo werden die Pakete auf dem Proxy abgelegt :?:\\ |
| - | * [[http://dewiki.opensuse.org/Paket_Repositories]] | + | :!: Achtung. Funktioniert nur mit den __echten__ URIs, nicht mit http://debian :!: |
| ====== rpm ====== | ====== rpm ====== | ||
| - | ===== Defragmentieren der RPM-Datenbank ===== | ||
| - | rpm --rebuilddb | ||
| - | === Links === | ||
| - | * [[ http://de.opensuse.org/SDB:Paketverwaltungsstapelspeicher_beschleunigen#Extern_defragmentieren | Tips zu rpm und zypper ]] | ||
| ===== Einzelne Dateien aus einem .rpm-Paket rausfischen ===== | ===== Einzelne Dateien aus einem .rpm-Paket rausfischen ===== | ||
| Zeile 257: | Zeile 217: | ||
| Datei extrahieren: | Datei extrahieren: | ||
| rpm2cpio nxclient-1.5.0-113.i386.rpm | cpio -id ./usr/NX/share/keys/server.id_dsa.key | rpm2cpio nxclient-1.5.0-113.i386.rpm | cpio -id ./usr/NX/share/keys/server.id_dsa.key | ||
| - | |||
| - | ====== zypper ====== | ||
| - | ===== zypper beschleunigen ===== | ||
| - | SQLite-Datenbanken lassen sich mit dem VACUUM-Kommando aufräumen: | ||
| - | sqlite3 /var/cache/zypp/zypp.db vacuum | ||
| - | ===== Delta-rpm ausschalten ===== | ||
| - | Delta-RPMs sind nur bei schmaler Netzanbindung sinnvoll, im Intranet bremsen sie die Installation ( und Updates ) aus. | ||
| - | === openSuSE 11.3 === | ||
| - | ''/etc/zypp/zypp.conf'' | ||
| - | <file> | ||
| - | [main] | ||
| - | download.use_deltarpm = false | ||
| - | </file> | ||
| - | |||
| - | ===== bash_completion ===== | ||
| - | Pakete: | ||
| - | |||
| - | ''bash_completion'' ( SuSE ) | ||
| - | |||
| - | ''bash'' ( Debian ) | ||
| - | |||
| - | Hilfreich beim Eingeben der Befehle, Optionen und Paketnamen | ||
| - | |||
| - | Aktivieren über den Befehl: | ||
| - | . /etc/bash_completion | ||
| - | |||
| - | ====== Quellpakete ====== | ||
| - | ===== Quellpakete installieren ===== | ||
| - | |||
| - | wget http://www1.mplayerhq.hu/MPlayer/releases/MPlayer-1.0pre7try2.tar.bz2 | ||
| - | tar xjf MPlayer-1.0pre7try2.tar.bz2 | ||
| - | cd MPlayer-1.0pre7try2 | ||
| - | ./configure | ||
| - | Fehlermeldungen beachten und fehlende Pakete ( enthalten meist "lib" und "devel" im Namen ) nachinstallieren. | ||
| - | make | ||
| - | Wenn ''make'' erfolgreich durchgelaufen ist, dann als Benutzer root | ||
| - | make install | ||
| - | oder | ||
| - | checkinstall | ||
| - | ausführen. | ||
| - | |||
| - | |||
| - | |||
| - | |||
| - | ===== rpm Pakete aus Source-RPMs bauen ===== | ||
| - | getestet unter CentOS 5.2 | ||
| - | |||
| - | Als root: | ||
| - | yum install rpm-build autoconf automake libselinux-devel libacl-devel | ||
| - | Als Nutzer: | ||
| - | mkdir -p $HOME/rpm/{BUILD,RPMS,SOURCES,SPECS,SRPMS} | ||
| - | echo "%_topdir $HOME/rpm" >> $HOME/.rpmmacros | ||
| - | rpm -ihv http://wftp.tu-chemnitz.de/pub/linux/centos/5.2/os/SRPMS/tar-1.15.1-23.0.1.el5.src.rpm | ||
| - | cd rpm/SPECS | ||
| - | rpmbuild -ba tar.spec | ||
| - | |||
| - | === Links === | ||
| - | * [[ http://www.rpm.org/max-rpm/ | rpm Buch online]] | ||
| - | * [[ http://www.rpm.org | rpm Homepage ]] | ||
| - | |||
| - | ===== deb Pakete aus Source-DEBs bauen ===== | ||
| - | Als root: | ||
| - | apt-get install fakeroot | ||
| - | apt-get build-dep tar | ||
| - | Als Nutzer: | ||
| - | apt-get source tar | ||
| - | cd tar-1.14 | ||
| - | dpkg-buildpackage -rfakeroot -uc -b | ||