Hier werden die Unterschiede zwischen zwei Versionen gezeigt.
Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung Nächste Überarbeitung | Vorherige Überarbeitung | ||
admin_grundlagen:paketverwaltung [2012/07/03 17:10] ingo_wichmann |
admin_grundlagen:paketverwaltung [2024/01/19 09:52] (aktuell) |
||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
- | Grundlegende Befehle siehe [[Paketverwaltung]] | + | ====== lokale Paketverwaltung ====== |
+ | ===== dpkg und rpm ===== | ||
+ | ^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 )) | | ||
+ | |Anzeigen welche Pakete installiert sind: | | ||
+ | dpkg -l | ||
+ | COLUMNS=150 dpkg -l | ||
+ | | | ||
+ | rpm -qa | ||
+ | | | ||
+ | |Anzeigen zu welchem Paket die Datei ''/usr/bin/top'' gehoert: | | ||
+ | dpkg -S /usr/bin/top | ||
+ | | | ||
+ | rpm -qf /usr/bin/top | ||
+ | | | ||
+ | |Beschreibung zum Paket //procps// anzeigen: | | ||
+ | dpkg -s procps | ||
+ | | | ||
+ | rpm -qi procps | ||
+ | | | ||
+ | |Anzeigen welche Dateien zum Paket //procps// gehoeren: | | ||
+ | dpkg -L procps | ||
+ | | | ||
+ | rpm -ql procps | ||
+ | | | ||
+ | |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 | ||
+ | | | ||
+ | rpm -i datei.rpm | ||
+ | | | ||
+ | |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 --purge <paket> | ||
+ | | | ||
+ | rpm -e <paket> | ||
+ | | | ||
- | ====== yum beschleunigen ====== | + | ^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: | | ||
+ | dpkg-query -W --showformat='${Installed-Size} \ | ||
+ | ${Package}\n' | sort -n | ||
+ | | | ||
+ | rpm -qa --queryformat '%{SIZE} %{NAME}\n' | sort -n | ||
+ | | | ||
+ | |Geänderte Dateien suchen | | ||
+ | debsums -e procps | ||
+ | | | ||
+ | rpm -V procps | ||
+ | | | ||
+ | | Geänderte Konfigurationsdateien suchen | | ||
+ | debsums -ec | ||
+ | | | ||
+ | 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: | | ||
+ | grep 'status installed' /var/log/dpkg.log | ||
+ | | | ||
+ | rpm -qa --last | tac | ||
+ | | | ||
+ | | Datenverzeichnis für Dienst //apache// finden: | | ||
+ | dpkg -S var/ | grep apache | ||
+ | | | ||
- | ruft man //yum// mit der Option ''-C'' auf, werden die Paket-Caches diesmal nicht aktualisiert. | + | ==== Abhängigkeiten (rpm) ==== |
+ | Von welchen Eigenschaften hängt das Paket //cups// ab? | ||
+ | rpm -q --requires cups | ||
+ | Welche Eigenschaften stellt das Paket //systemd// anderen Paketen zur Verfügung? | ||
+ | rpm -q --provides systemd | ||
+ | Welche Pakete hängen von //cups// ab? | ||
+ | rpm -q --whatrequires cups | ||
+ | Welches Paket stellt die Eigenschaft //syslog// zur Verfügung? | ||
+ | rpm -q --whatprovides syslog | ||
- | mehrere //yum// Befehle nacheinander, aber nur ein mal Cache aktualisieren: | + | Bei //dpkg// sind Pakete direkt von anderen Paketen abhängig. |
- | yum shell | + | |
- | ====== Mirror erstellen ====== | + | ====== Repository basierte Paketverwaltung ====== |
- | ===== mit reposync ===== | + | |
- | yum install yum-utils | + | |
- | mkdir -p /srv/mirror/centos/5 | + | |
- | Beispiel: update Repository | ||
- | reposync -p /srv/mirror/centos/5 --repoid=update -n -a x86_64 | ||
- | Beispiel: update Repository, nur x86_64, nur aktuelle Pakete | + | ===== apt, dnf und zypper ===== |
- | reposync -p /srv/mirror/centos/5 --repoid=update -n -a x86_64 | + | ^Funktion^Debian ^RedHat ^SuSE ^ |
+ | |Repositories einbinden | ''/etc/apt/sources.list'' \\ ''/etc/apt/sources.list.d/*.list'' | | ||
+ | yum-config-manager | ||
+ | oder ''/etc/yum.repos.d/*.repo'' | ''/etc/zypp/repos.d/*.repo'' \\ ''zypper addrepo https:/...'' | | ||
+ | |Repository-Daten aktualisieren| | ||
+ | apt update | ||
+ | | | ||
+ | dnf check-update | ||
+ | | | ||
+ | zypper refresh | ||
+ | | | ||
+ | |Updates einspielen | | ||
+ | apt upgrade | ||
+ | | | ||
+ | dnf upgrade | ||
+ | | | ||
+ | zypper update | ||
+ | | | ||
+ | |Distributions upgrade | | ||
+ | apt dist-upgrade | ||
+ | Ubuntu: | ||
+ | do-release-upgrade | ||
+ | | | ||
+ | _ | ||
+ | | | ||
+ | zypper dup | ||
+ | | | ||
+ | |Nach Paketen suchen| | ||
+ | apt search suchwort | ||
+ | | | ||
+ | dnf search suchwort | ||
+ | dnf list | grep paketname | ||
+ | | | ||
+ | zypper search suchwort | ||
+ | | | ||
+ | |Beschreibung zu einem Paket anzeigen:| | ||
+ | apt show paketname | ||
+ | | | ||
+ | dnf info paketname | ||
+ | | | ||
+ | zypper info paketname | ||
+ | | | ||
+ | |Paket installieren| | ||
+ | apt install paketname | ||
+ | | | ||
+ | dnf install paketname | ||
+ | | | ||
+ | zypper install paketname | ||
+ | | | ||
+ | |Paket erneut installieren| | ||
+ | apt-get install --reinstall paketname | ||
+ | apt reinstall paketname | ||
+ | | | ||
+ | dnf reinstall paketname | ||
+ | | TODO | | ||
+ | |Paket entfernen| | ||
+ | apt remove paketname | ||
+ | apt purge paketname | ||
+ | | | ||
+ | dnf remove paketname | ||
+ | | | ||
+ | zypper remove paketname | ||
+ | | | ||
+ | |Überflüssige Pakete entfernen| | ||
+ | apt autoremove | ||
+ | apt --purge autoremove | ||
+ | | | ||
+ | dnf autoremove | ||
+ | | | ||
+ | :?: | ||
+ | | | ||
+ | |Paket für Datei ''samba.schema'' im Repository suchen| | ||
+ | apt-file update | ||
+ | apt-file search samba.schema | ||
+ | | | ||
+ | dnf provides */samba.schema | ||
+ | | | ||
+ | zypper search -d pstree | ||
+ | | | ||
+ | ==== Abhängigkeiten (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 | ||
+ | |||
+ | ==== SLES 15 Moduloperationen ==== | ||
+ | Welche Module sind aktiviert? | ||
+ | SUSEConnect -s | ||
+ | Suche in allen Modulen | ||
+ | zypper search-packets <name> | ||
+ | ====== harte / weiche Abhängigkeiten ====== | ||
+ | Debian: depends, recommends, suggests | ||
+ | |||
+ | <file txt /etc/apt/apt.conf> | ||
+ | TODO | ||
+ | </file> | ||
+ | |||
+ | CentOS: weak | ||
+ | |||
+ | <file txt /etc/dnf/dns.conf> | ||
+ | install_weak_deps=False | ||
+ | </file> | ||
+ | |||
+ | ====== Zusätzliche Repositories ====== | ||
+ | ===== Debian ===== | ||
+ | Adresse des Repositories zu ''/etc/apt/sources.list.d'' hinzufügen. | ||
+ | |||
+ | Aus diesem Repository das Paket ''repositoryname-keyring'' installieren, darin sind die Schlüssel enthalten. | ||
+ | |||
+ | Oder: ''apt-key add dateiname'', fügt die Schlüssel aus ''dateiname'' zum Schlüsselbund hinzu. | ||
+ | |||
+ | Mit ''apt-key export keyId'' wird ein Schlüssel aus einem bestehenden Schlüsselbund von APT auf stdout exportiert. | ||
+ | |||
+ | Mit ''gnupg --export --armor keyId'' wird ein Schlüssel aus einem privaten Schlüsselbund auf stdout exportiert. | ||
+ | ===== Dokumentation ===== | ||
+ | [[ http://docs.redhat.com/docs/en-US/Red_Hat_Enterprise_Linux/6/html/Deployment_Guide/ch-yum.html | RedHat ]] | ||
+ | [[ http://www.debian.org/doc/manuals/apt-howto/index.de.html | Debian ]] | ||
+ | [[ http://de.opensuse.org/Paketverwaltung | openSuSE ]] | ||
+ | * [[http://dnf.readthedocs.org/en/latest/cli_vs_yum.html|dnf]] | ||
+ | |||
+ | [[http://yum.baseurl.org/wiki/Guides| yum]] | ||
+ | |||
+ | ===== Debian ===== | ||
+ | * http://backports.org - neuere Versionen vieler Pakete für Debian stable | ||
+ | * http://deb-multimedia.org/ - Software und Codecs für Multimedia | ||
+ | |||
+ | ==== apt-cacher-ng ==== | ||
+ | Debian-Wiki: https://wiki.debian.org/AptCacherNg | ||
+ | |||
+ | == Server Config == | ||
+ | apt install apt-cacher-ng | ||
+ | dpkg-reconfigure apt-cacher-ng -p low | ||
+ | |||
+ | == Client Config == | ||
+ | <file txt /etc/apt/apt.conf.d/proxy> | ||
+ | Acquire::http { Proxy "http://proxy:3142"; } | ||
+ | </file> | ||
+ | |||
+ | proxy durch IP oder host ersetzen. | ||
+ | |||
+ | :?: Wo werden die Pakete auf dem Proxy abgelegt :?:\\ | ||
+ | :!: Achtung. Funktioniert nur mit den __echten__ URIs, nicht mit http://debian :!: | ||
+ | ===== Ubuntu ===== | ||
+ | * http://getdeb.net | ||
+ | * http://www.medibuntu.org/ | ||
+ | |||
+ | ===== RedHat / Centos / Scientific Linux ===== | ||
+ | * http://wiki.centos.org/Repositories | ||
+ | |||
+ | ===== openSuSE ===== | ||
+ | * [[https://de.opensuse.org/Paket_Repositories]] | ||
+ | |||
+ | ====== 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 ===== | ||
+ | Anzeigen welche Dateien drin sind: ((mehr zu [[cpio]])) | ||
+ | rpm2cpio nxclient-1.5.0-113.i386.rpm | cpio -i -t | ||
+ | |||
+ | Datei extrahieren: | ||
+ | rpm2cpio nxclient-1.5.0-113.i386.rpm | cpio -id ./usr/NX/share/keys/server.id_dsa.key | ||
- | ===== mit rsync ===== | ||
- | mkdir -p /srv/mirror/centos/5/updates/x86_64/ | ||
- | o="-a --hard-links --delete --delete-excluded --delete-during " | ||
| | ||
- | Beispiel: update Repository, nur x86_64 | + | |
- | rsync $o ftp.hosteurope.de::centos/5/updates/x86_64/ /srv/mirror/centos/5/updates/x86_64/ | + | ===== Paketbeschreibungen ===== |
- | rsync ftp.hosteurope.de::centos/RPM-GPG-KEY-CentOS-5 /srv/mirror/centos/RPM-GPG-KEY-CentOS-5 | + | |
+ | Die Beschreibungen von Paketen bei Debian sind im Original auf Englisch. | ||
+ | Deutsche (und anderssprachige) Übersetzungen werden mit Hilfe des Debian | ||
+ | Description Translation Project [[http://ddtp.debian.net/]] organisiert | ||
+ | und bei nächtlichen Durchläufen mit beachtet. | ||