Inhaltsverzeichnis
Debian Paketverwaltung
rpm/dpkg-Äquivalente
Was | rpm | dpkg |
---|---|---|
alle installierten Pakete | rpm -qa | dpkg -l |
Info zu Paket | rpm -qi Paket | dpkg -p Paket, apt-cache show Paket |
Liste der Dateien von Paket | rpm -ql Paket | dpkg -L linux-image-2.6-686 |
Liste der Dateien von Paketdatei | dpkg -c firmware-bnx2_0.14+lenny2_all.deb | |
Liste der Dokudateien von Paket | rpm -qd Paket | gibt es nicht ? |
Liste der Configdateien von Paket | rpm -qc Paket | dpkg-query -W -f '${Conffiles}\n' Paket |
Installscripts | rpm -q –scripts Paket | cd /var/lib/dpkg/info |
Änderungen im Paket | rpm -q –changelog Paket | aptitude changelog Paket, /usr/share/doc/Paket/changelog.Debian.gz |
veränderte Dateien im Dateisystem ggü Paket | rpm -V Paket | debsums -a Paket (apt-get install debsums) |
zu welchem Paket gehört die Datei | rpm -qf Datei | dpkg -S Datei |
installiere Paket | rpm -ihv rpm-datei | dpkg -i deb-datei |
update Paket | rpm -Uhv rpm-datei | dpkg -i deb-datei |
Paket löschen | rpm -e Paket | aptitude remove Paket |
zeige Paketabhängigkeiten | apt-cache showpkg Paket | |
aus welchem Repo ist ein Paket | ? | apt-show-versions -b <Paket> oder apt-cache policy <Paket> |
Hold-Pakete
Siehe auch
Abfragen mit
aptitude search ~ahold
Setzen mit
aptitude hold $PAKET1 $PAKET2
Veraltet:
echo $PAKET hold | dpkg --set-selections
Hold entfernen mit
aptitude unhold $PAKET
Paket aus bestimmten Release installieren, z.B. Backports
apt-get -t lenny-backports install linux-image-2.6.32-bpo.5-amd64 firmware-bnx2
bzw.
aptitude -t lenny-backports install linux-image-2.6.32-bpo.5-amd64 firmware-bnx2
unmet dependencies, Handling bei nicht erfüllbaren Abhängigkeiten
Package löschen trotz Abhängigkeit
dpkg --force-depends --remove dellomsa
apt-get / aptitude nutzen trotz unerfüllter Abhängigkeiten
- editiere von Hand:
/var/lib/dpkg/status
Package Priorities
Z.B. bei Installation via Backports sollen Backports auf geupdatet werden.
If you don't use pinning (see [1]) you have to update the package manually via "apt-get -t lenny-backports install <packagelist>" with the packagelist of your installed packages affected by this update. [1] <http://backports.debian.org/Instructions> We recommend to pin (in /etc/apt/preferences) the backports repository to 200 so that new versions of installed backports will be installed automatically. Package: * Pin: release a=lenny-backports Pin-Priority: 200
Warum 200? Gilt das nur für installiert Paket? M.a.W.: werden neue Paket normal von der Distribution installiert?
Alternative: für alle installierten Backport-Pakete die Priority selbst hochsetzen:
Package: mysql-common Pin: release a=lenny-backports Pin-Priority: 999
Aktuellen Zustand der Prioritäten und gepinnten Pakete anschauen:
root@x2gotest:/etc/apt# apt-cache policy Package files: 100 /var/lib/dpkg/status release a=now 500 http://repo01vn.xxx.de/debian/ wheezy-updates/main Translation-en 500 http://repo01vn.xxx.debian/ wheezy-updates/main amd64 Packages release o=Debian,a=stable-updates,n=wheezy-updates,l=Debian,c=main origin repo01vn.xxx.de 500 http://repo01vn.xxx.de/puppetlabs/apt/ wheezy/dependencies amd64 Packages release o=Puppetlabs,a=wheezy,n=wheezy,l=Puppetlabs,c=dependencies origin repo01vn.xxx.de 500 http://repo01vn.xxx.de/puppetlabs/apt/ wheezy/main amd64 Packages release o=Puppetlabs,a=wheezy,n=wheezy,l=Puppetlabs,c=main origin repo01vn.xxx.de 500 http://repo01vn.xxx.de/debian/ wheezy/main Translation-en 500 http://repo01vn.xxx.de/debian/ wheezy/main amd64 Packages release v=7.5,o=Debian,a=stable,n=wheezy,l=Debian,c=main origin repo01vn.xxx.de Pinned packages: puppet -> 3.4.3-1puppetlabs1 puppet-common -> 3.4.3-1puppetlabs1
Verhindern, dass nach Security-Update noch alte Libs benutzt werden
2021-04-05: Paket needrestart
. Beispiel: https://gitlab.strukturpunkt.de/kfr/awx_jobs/-/blob/master/tasks/needrestart.yml
Debian
„Lösung“ in Kurzform:
aptitude install debian-goodies
checkrestart
als cronjob laufen lassen
Siehe auch http://www.debian.org/doc/manuals/securing-debian-howto/ch4.en.html
RedHat
- Tool
check_newlibs
- Idee: von jedem laufenden Prozess wird überprüft, welches Binaries und Libs benutzt werden, aus welchem RPM-Paket sie kommen, und ob die Startzeit kleiner Installzeit des RPMs sind.
- yum install perl-DateTime-Format-DateParse
- Beispiel
[root@costard src]# check_newlibs Warning: Needs restart: /usr/libexec/postfix/master, pids 1570 Warning: Needs restart: /usr/libexec/postfix/qmgr, pids 1624 Warning: Needs restart: /usr/libexec/postfix/pickup, pids 26164 Warning: Needs restart: /usr/sbin/sshd, pids 1352 26685
- Standard-Tool
needs-restarting
macht das gleiche
Übersicht welche Version auf welchem Debian-Release
Auch für Derivat (Ubuntu):
Paketauswahl sichern/übertragen/installieren
- Beispiel:
dpkg --get-selections > package_list ... cat package_list | dpkg --set-selections && apt-get dselect-upgrade
Danke
- Matthias König via research@exsuse.de für einige rpm/dpkg-Äquivalente-Tipps