Linuxhotel Wiki

Wie ging das nochmal?

Benutzer-Werkzeuge

Webseiten-Werkzeuge


admin_grundlagen:paketverwaltung

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.

Link zu der Vergleichsansicht

Beide Seiten, vorherige ÜberarbeitungVorherige Überarbeitung
Nächste Überarbeitung
Vorherige Überarbeitung
admin_grundlagen:paketverwaltung [2012/07/03 16:03] – ingo_wichmannadmin_grundlagen:paketverwaltung [2026/09/15 14:23] (aktuell) – [apt, dnf und zypper] 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 +  dnf 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
 | |
-  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
 | |
-  yum remove paketname+  dnf remove paketname
 | |
-|Datei aus noch nicht installiertem Paket suchen| +  zypper remove paketname
-  apt-file update; apt-file search +
-|  +
- +
-==== 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 +
- +
-==== 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 +|Überflüssige Pakete entfernen| 
-oder +  apt autoremove 
-  zypper service-add http://suse/i386/update/10.3+  apt --purge autoremove
 | |
-|Repository-Daten aktualisieren| +  dnf autoremove
-  +
 | |
-  rug refresh+  :?:
 | |
-  zypper refresh+|Paket für Datei ''samba.schema'' im Repository suchen| 
 +  apt-file update 
 +  apt-file search samba.schema 
 +|  
 +  dnf provides */samba.schema
 | |
-|Updates einspielen | +  zypper search -d pstree
-  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 
-| 
-|Datei aus noch nicht installiertem Paket suchen (ungetestet)((alternativ , http://packages.opensuse-community.org/))| 
-   webpin 
-|  
-| 
- 
-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 
- 
-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 
- 
-===== Dokumentation der Distributoren ===== 
-[[ http://docs.fedoraproject.org/yum/en/ | Fedora ]] 
-[[ http://www.debian.org/doc/manuals/apt-howto/index.de.html | Debian ]] 
-[[ http://de.opensuse.org/Paketverwaltung | openSuSE ]] 
- 
 ====== Zusätzliche Repositories ====== ====== Zusätzliche Repositories ======
 ===== Debian ===== ===== Debian =====
-  * http://backports.org - neuere Versionen vieler Pakete für Debian stable +==== extrepo ==== 
-  * http://debian-multimedia.org/ - Software und Codecs für Multimedia +Docker CE über Extrepo installieren: 
-  * http://www.dotdeb.org/ - aktueller LAMP Stack ( PHP, Mysql, ... )+  apt install extrepo 
 +  extrepo search docker 
 +  extrepo enable docker-ce 
 +  apt update 
 +  apt policy docker-ce 
 +  apt install docker-ce
  
-===== Ubuntu ===== +==== andere Drittanbieter ====
-  * http://getdeb.net +
-  * http://www.medibuntu.org/+
  
-===== RedHat / Centos / Scientific Linux ===== +Adresse des Repositories zu ''/etc/apt/sources.list.d'' hinzufügen.
-  * http://wiki.centos.org/Repositories +
-  * http://packages.atrpms.net/name/atrpms-repo+
  
-===== openSuSE ===== +Aus diesem Repository das Paket ''repositoryname-keyring'' installieren, darin sind die Schlüssel enthalten.
-  * [[http://dewiki.opensuse.org/Paket_Repositories]]+
  
-====== Debian / Ubuntu ====== +Oder: ''apt-key add dateiname'', fügt die Schlüssel aus ''dateiname'' zum Schlüsselbund hinzu.
-===== debconf =====+
  
-Anzeigen, welche Einstellungen bei der Installation des Paketes ''exim4-config'' vorgenommen wurden: +Mit ''apt-key export keyId'' wird ein Schlüssel aus einem bestehenden Schlüsselbund von APT auf stdout exportiert.
-  debconf-show exim4-config+
  
-Nur die mit * gekennzeichneten Einträge sind vom Benutzer erfragt worden. +Mit ''gnupg --export --armor keyId'' wird ein Schlüssel aus einem privaten Schlüsselbund auf stdout exportiert. 
 +====== SLES 15 Moduloperationen ====== 
 +Welche Module sind aktiviert? 
 +  SUSEConnect -s 
 +Suche in allen Modulen 
 +  zypper search-packets <name>
  
-Man kann die von debconf gestellten Fragen vorab mit dem dem Befehl ''debconf-set-selections'' beantworten: +===== zypper ===== 
-<code bash> +Kein wirkliches Äquivalent zu ''autoremove'' 
-debconf-set-selections <<DEBCONF +  zypper packages --orphaned 
-# Other destinations for which mail is accepted: +  zypper packages --unneeded # wird nicht mehr gebraucht? 
-exim4-config exim4/dc_other_hostnames string notebook01.linuxhotel.de +   
-# General type of mail configuration: +Entfernen inkl. aller Abhängigkeiten 
-exim4-config exim4/dc_eximconfig_configtype select local delivery only; not on a network +  zypper remove --clean-deps <paket> 
-# Root and postmaster mail recipient: +====== apt-cacher-ng ====== 
-exim4-config exim4/dc_postmaster string +Debian-Wiki: https://wiki.debian.org/AptCacherNg
-# System mail name: +
-exim4-config exim4/mailname string notebook01.linuxhotel.de +
-# Split configuration into small files? +
-exim4-config exim4/use_split_config boolean false +
-# IP-addresses to listen on for incoming SMTP connections: +
-exim4-config exim4/dc_local_interfaces string 127.0.0.1 +
-DEBCONF +
-</code>+
  
-Der Befehl ''debconf-get-selections'' aus dem Paket ''debconf-utils'' erzeugt eine Ausgabe, die man leicht als Eingabe für den Befehlt ''debconf-set-selections'' verwenden kann: +== Server Config == 
-  debconf-get-selections | grep -B 1 ^exim4-config +  apt install apt-cacher-ng 
-//Achtung: die Ausgabe von ''debconf-get-selections'' enthält ein Tabulatorzeichen zwischen den 4 Feldern, daß in Terminals uU. als mehrere Leerzeichen dargestellt wird. Die Eingabe von ''debconf-set-selections'' darf aber immer nur genau 1 Whitespace-Zeichen enthalten.//+  dpkg-reconfigure apt-cacher-ng -p low
  
-===== Repositories mischen ===== +== Client Config == 
-http://jaqque.sbih.org/kplug/apt-pinning.html+<file txt /etc/apt/apt.conf.d/proxy> 
 +Acquire::http { Proxy "http://proxy:3142"; } 
 +</file>
  
-==== Dateien aus einem .deb-Paket rausfischen ==== +proxy durch IP oder host ersetzen.
-Alle Dateien aus einem Paket ins aktuelle Verzeichnis kopieren +
-  dpkg-deb --vextract /var/cache/apt/archives/xen-utils-common_3.0.3-0-2_all.deb .+
  
-===== Paket-Signatur ===== +:?: Wo werden die Pakete auf dem Proxy abgelegt :?:\\ 
-=== Schlüssel über Paket beziehen === +:!: Achtung. Funktioniert nur mit den __echten__ URIs, nicht mit http://debian :!:
-Für Debian gültige Schlüssel finden sich im Paket ''debian-archive-keyring'' und können nachträglich mit folgenden Befehlen geladen werden: +
-  aptitude install debian-archive-keyring +
-  apt-key update+
  
-Paketliste aktualisieren - sollte jetzt ohne Fehlermeldung klappen: +====== rpm ======
-  aptitude update+
  
-Schlüssel für das Debian-Archiv finden sich auch unter http://ftp-master.debian.org/ 
  
-=== Schlüssel über Datei beziehen === +===== Einzelne Dateien aus einem .rpm-Paket rausfischen =====
-Im Fall von debian-volatile ( http://www.debian.org/volatile ) gibt es kein Paket, sondern man muß den Schlüssel von Hand runterladen und dann importieren: +
-  wget http://www.debian.org/volatile/etch-volatile.asc +
-  apt-key add etch-volatile.asc +
-  apt-key update +
- +
-Nachschauen obs geklappt hat: +
-  apt-key list +
- +
-Paketliste aktualisieren - sollte jetzt ohne Fehlermeldung klappen: +
-  aptitude update +
- +
-=== Schlüssel über Key-Server beziehen === +
-Im Fall von anderen Quellen die nur die PGP Signatur veröffentlichen gilt folgendes Verfahren: +
-  gpg --keyserver hkp://wwwkeys.eu.pgp.net --recv-keys DB90D8FC306B6783 +
-  gpg --armor --export DB90D8FC306B6783 | apt-key add - +
- +
-=== Links === +
-  * http://wiki.debian.org/SecureApt +
- +
-==== Empfohlene Pakete automatisch installieren ==== +
-Was ich persönlich nicht mag: aptitude installiert automatisch empfohlene Pakete mit. Das kann man aber mit der Option ''-R'' oder folgender Konfiguration ändern: +
-''/etc/apt/apt.conf'': +
-<file> +
-aptitude::Recommends-Important "false"; +
-</file> +
- +
-oder im Menu Aptitude/Options/Dependency Handling/ [X]  Install Recommended Packages automatically => abwählen +
- +
-===== 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]])) Anzeigen welche Dateien drin sind: ((mehr zu [[cpio]]))
   rpm2cpio nxclient-1.5.0-113.i386.rpm | cpio -i -t   rpm2cpio nxclient-1.5.0-113.i386.rpm | cpio -i -t
Zeile 326: Zeile 225:
   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
  
-===== yum beschleunigen ===== 
-ruft man ''yum'' mit der Option ''-C'' auf, werden die Paket-Caches diesmal nicht aktuallisiert.   
- 
-===== zypper ===== 
-SQLite-Datenbanken lassen sich mit dem VACUUM-Kommando aufräumen: 
-  sqlite3 /var/cache/zypp/zypp.db vacuum 
- 
-===== 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 
  
admin_grundlagen/paketverwaltung.1341331426.txt.gz · Zuletzt geändert: 2012/07/03 16:03 von ingo_wichmann