Linuxhotel Wiki

Wie ging das nochmal?

Benutzer-Werkzeuge

Webseiten-Werkzeuge


admin_grundlagen:paketverwaltung

Dies ist eine alte Version des Dokuments!


lokale Paketverwaltung

dpkg und rpm

Funktion Debian und Ubuntu RedHat, Fedora und SuSE 1)
Anzeigen welche Pakete installiert sind:
Anzeigen zu welchem Paket die Datei /usr/bin/top gehoert:
Beschreibung zum Paket procps anzeigen:
Anzeigen welche Dateien zum Paket procps gehoeren:
Paket installieren 2):
Paket loeschen: 3)
Pakete nach Größe sortiert ausgeben:
Geaenderte Dateien suchen
Geänderte Konfigurationsdateien suchen
Zuletzt installierte Pakete anzeigen:
Datenverzeichnis für Dienst apache finden:

Abhängigkeiten (rpm)

Von welchen Eigenschaften hängt das Paket cups-libs ab?

rpm -q --requires cups

Welche Eigenschaften stellt das Paket cups-libs anderen Paketen zur Verfügung?

rpm -q --provides paket

Welche Pakete hängen von der Eigenschaft libcups.so.2 ab?

rpm -q --whatrequires libcups.so.2

Welches Paket stellt die Eigenschaft libcups.so.2 zur Verfügung?

rpm -q --whatprovides libcups.so.2

Bei dpkg sind Pakete direkt von anderen Paketen abhängig.

Repository basierte Paketverwaltung

apt, yum und zypper

FunktionDebian RedHat SuSE
Repositories einbinden

/etc/apt/sources.list | /etc/yum.repos.d/*.repo
/etc/zypp/repos.d/*.repo |

Repository-Daten aktualisieren
nach Updates suchen
Updates einspielen
Nach Paketen suchen
Beschreibung zu einem Paket anzeigen:
Paket installieren
Paket entfernen
Paket für Datei samba.schema im Repository suchen

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 ) 4) rug ( SuSE 10.1 bis 10.2 / SLES 10 ) zypper ( ab SuSE 10.2)
Repositories einbinden

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 

oder

zypper service-add http://suse/i386/update/10.3
Repository-Daten aktualisieren
Updates einspielen
Nach Paketen suchen
Paketbeschreibung anzeigen:
Paket installieren

oder

y2pmsh install paketname
y2pmsh solve
y2pmsh commit
Paket entfernen

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

Zusätzliche Repositories

Debian

Ubuntu

RedHat / Centos / Scientific Linux

openSuSE

rpm

Defragmentieren der RPM-Datenbank

rpm --rebuilddb

Einzelne Dateien aus einem .rpm-Paket rausfischen

Anzeigen welche Dateien drin sind: 5)

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

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

[main]
download.use_deltarpm = false

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

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
1)
OK, rpm ist auch für debian verfügbar, aber sollte da nur in besonderen Fällen eingesetzt werden
2)
das macht man normalerweise mit apt-get, yum, zypper oder yast
3)
auch das geht mit apt-get, yum, zypper oder yast
4)
nicht offiziell unterstützt - aber brauchbar
5)
mehr zu cpio
admin_grundlagen/paketverwaltung.1341346828.txt.gz · Zuletzt geändert: (Externe Bearbeitung)