Linuxhotel Wiki

Wie ging das nochmal?

Benutzer-Werkzeuge

Webseiten-Werkzeuge


lpi1:paketverwaltung

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen gezeigt.

Link zu der Vergleichsansicht

lpi1:paketverwaltung [2020/02/06 12:15]
lpi1:paketverwaltung [2024/01/19 09:52] (aktuell)
Zeile 1: Zeile 1:
 +====== 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>​
 +|
 +
 +^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
 +|
 +
 +==== 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
 +
 +Bei //dpkg// sind Pakete direkt von anderen Paketen abhängig.
 +
 +====== Repository basierte Paketverwaltung ======
 +
 +
 +===== apt, dnf und zypper =====
 +^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
 +
 +
 +  ​
 +
 +===== Paketbeschreibungen =====
 +
 +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.