LPIC101/102.4 Debian/Paketverwaltung: Unterschied zwischen den Versionen

Aus Foxwiki
Keine Bearbeitungszusammenfassung
 
(2 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
= Grundlegende Packagverwaltung =
== Grundlegende Packagverwaltung ==
* Paket-Manager sind auch als Paketverwaltung oder Package Manager bekannt.
* Paket-Manager sind auch als Paketverwaltung oder Package Manager bekannt.
* Die Termini bezeichnen eine Sammlung von Werkzeugen für die komfortable Verwaltung von Computer-Software auf Betriebssystemen, welche die Paketverwaltung zur Installation des Pakets am System vornehmen muss, werden von dieser aus dem Paket ausgelesen und umgesetzt.  
* Die Termini bezeichnen eine Sammlung von Werkzeugen für die komfortable Verwaltung von Computer-Software auf Betriebssystemen, welche die Paketverwaltung zur Installation des Pakets am System vornehmen muss, werden von dieser aus dem Paket ausgelesen und umgesetzt.
* Erkennt die Paketverwaltung dabei, dass noch weitere Software für das Funktionieren benötigt wird.
* Erkennt die Paketverwaltung dabei, dass noch weitere Software für das Funktionieren benötigt wird.
* Soll eine installierte Software gelöscht werden, nimmt die Paketverwaltung dann wieder die Informationen des Pakets, um es anhand dessen Konfiguration zu ändern und Dateien zu löschen.  
* Soll eine installierte Software gelöscht werden, nimmt die Paketverwaltung dann wieder die Informationen des Pakets, um es anhand dessen Konfiguration zu ändern und Dateien zu löschen.
* Paketinformationen erhalten, wie Version, Inhalt, Abhängigkeiten, Integrität des Paketes und Installationsstatus ob das Paket installiert ist oder nicht.
* Paketinformationen erhalten, wie Version, Inhalt, Abhängigkeiten, Integrität des Paketes und Installationsstatus ob das Paket installiert ist oder nicht.


Zeile 15: Zeile 15:
| apt upgrade ''Paket' || ''paket'' aktualisieren
| apt upgrade ''Paket' || ''paket'' aktualisieren
|-
|-
| apt remove ''Paket'' || ''paket'' deinstallieren
| apt remove ''Paket'' || ''paket'' deinstallieren
|-
|-
| apt list --installed || installierte Pakete auflisten
| apt list --installed || installierte Pakete auflisten
|-
|-
| apt list ''Paket' || Informationen und Status des Pakets anzeigen
| apt list ''Paket' || Informationen und Status des Pakets anzeigen
Zeile 23: Zeile 23:
| apt-cache rdepends ''Paket'' || Abhängigkeiten anzeigen
| apt-cache rdepends ''Paket'' || Abhängigkeiten anzeigen
|-
|-
| aptitude show 'Paket' || Suche in allen verfügbaren Paketen
| aptitude show 'Paket' || Suche in allen verfügbaren Paketen
|}
|}


=DPKG-Programme=
==DPKG-Programme==
== dpkg==
=== dpkg===
Wenn Sie ein Programm auf einem Debian-basierten System installieren wollen, das als Debian-Paket vorliegt, verwenden Sie das Kommando dpkg.
Wenn Sie ein Programm auf einem Debian-basierten System installieren wollen, das als Debian-Paket vorliegt, verwenden Sie das Kommando dpkg.
* Heutzutage wird man allerdings Installationsprogrammen, wie apt oder apt-get den Vorzug geben, weil diese etliche Vorteile gegenüber dpkg bieten.  
* Heutzutage wird man allerdings Installationsprogrammen, wie apt oder apt-get den Vorzug geben, weil diese etliche Vorteile gegenüber dpkg bieten.
* Viele Optionen von dpkg können sowohl in der kurzen als auch in der langen Notation übergeben werden.  
* Viele Optionen von dpkg können sowohl in der kurzen als auch in der langen Notation übergeben werden.
Die beiden folgen den Kommandos installieren jeweils ein Paket:
Die beiden folgen den Kommandos installieren jeweils ein Paket:
  debian:/pakete# dpkg -i fortune_1.0-861_i386.deb
  debian:/pakete# dpkg -i fortune_1.0-861_i386.deb
Zeile 41: Zeile 41:
  Richte fortune ein (1.0-861) ...
  Richte fortune ein (1.0-861) ...


Die Deinstallation eines Programms erfolgt wahlweise mithilfe der Schalter  
Die Deinstallation eines Programms erfolgt wahlweise mithilfe der Schalter
{| class="wikitable options"
{| class="wikitable sortable options"
|-
! Unix !! GNU !! Beschreibung
|-
| -r || --remove || Hierbei bleiben eventuelle Konfigurationsdateien eines Programms erhalten. Wenn Konfigurationsdateien ebenfalls aus dem System entfernt werden sollen, müssen Sie die Optionen
| -r || --remove || Hierbei bleiben eventuelle Konfigurationsdateien eines Programms erhalten. Wenn Konfigurationsdateien ebenfalls aus dem System entfernt werden sollen, müssen Sie die Optionen
|-
|-
Zeile 61: Zeile 64:
| -L || --listfileszeigt || die Dateien an, die ein Paket installiert hat
| -L || --listfileszeigt || die Dateien an, die ein Paket installiert hat
|}
|}
* -r oder--remove. Hierbei bleiben eventuelle Konfigurationsdateien eines Programms erhalten. Wenn Konfigurationsdateien ebenfalls aus dem System entfernt werden sollen, müssen Sie die Optionen
* -P bzw. --purge verwenden. Es folgt eine Auflistung der wichtigsten Optionen für die Prüfung:
* -i bzw. --install installiert das angegebene Paket.
* -r bzw. --remove entfernt das angegebene Paket. Konfigurationsdateien bleiben aber erhalten. Achtung! Die Option
* -e ist nicht, wie bei RPM,die Erase-Funktion!
* -P bzw. --purge entfernt das angegebene Programm inklusive der Konfigurationsdateien.
* -s bzw. --status gibt umfangreiche Informationen über das installierte Paket aus.
* -C bzw. --audit zeigt Pakete an, die nur teilweise auf dem System installiert sind.
* -L bzw. --listfileszeigt die Dateien an, die ein Paket installiert hat.


== dselect ==
=== dselect ===
'''dselect''' ist ein Frontend für dpkg
'''dselect''' ist ein Frontend für dpkg
=== Operationen ===
==== Operationen ====
* Zugriffsmethode auswählen
* Zugriffsmethode auswählen
* Liste verfügbarer Pakete erneuern
* Liste verfügbarer Pakete erneuern
Zeile 81: Zeile 75:
* Software löschen
* Software löschen


== dpkg-reconfigure ==
=== dpkg-reconfigure ===
* Mit dpkg-reconfigure können Sie ein bereits installiertes Paket neu konfigurieren.
* Mit dpkg-reconfigure können Sie ein bereits installiertes Paket neu konfigurieren.
* Mit dpkg-reconfigure-a können Sie sogar alle installierten Pakete neu konfigurieren.
* Mit dpkg-reconfigure-a können Sie sogar alle installierten Pakete neu konfigurieren.
* Dieser Vorgang kann aber in Abhängigkeit von der Menge der installierten Pakete sehr viel Zeit in Anspruch nehmen.
* Dieser Vorgang kann aber in Abhängigkeit von der Menge der installierten Pakete sehr viel Zeit in Anspruch nehmen.


= Konfiguration =
== Konfiguration ==
; Konfigurationsdateien und Verzeichnisse
; Konfigurationsdateien und Verzeichnisse
==/etc/dpkg/dpkg.cfg==
===/etc/dpkg/dpkg.cfg===
Das ist die Konfigurationsdatei für dpkg.In dieser Datei werden die voreingestellten Optionen für dpkg festgelegt. Sie können sich dabei Arbeitsaufwand ersparen, wenn Sie immer dieselben Optionen mit dpkg verwenden. Die Datei wird zeilensepariert
Das ist die Konfigurationsdatei für dpkg.In dieser Datei werden die voreingestellten Optionen für dpkg festgelegt. Sie können sich dabei Arbeitsaufwand ersparen, wenn Sie immer dieselben Optionen mit dpkg verwenden. Die Datei wird zeilensepariert
ausgewertet. Es steht also in jeder Zeile nur eine Option.Bei den meisten aktuellen Distributionen enthält die Datei im Auslieferungszustand nur eine einzige Zeile, mit der die Logdatei definiert wird:
ausgewertet. Es steht also in jeder Zeile nur eine Option.Bei den meisten aktuellen Distributionen enthält die Datei im Auslieferungszustand nur eine einzige Zeile, mit der die Logdatei definiert wird:
  log /var/log/dpkg.log
  log /var/log/dpkg.log
==/var/lib/dpkg/info==
===/var/lib/dpkg/info===
In diesem Verzeichnis befinden sich zu jedem installierten Paket mehrere Skripte und Dateien, die für eine korrekte Installation und auch später wieder für die Deinstallation benötigt werden. Das Beispiel zeigt die entsprechenden Dateien für den Editor nano:
In diesem Verzeichnis befinden sich zu jedem installierten Paket mehrere Skripte und Dateien, die für eine korrekte Installation und auch später wieder für die Deinstallation benötigt werden. Das Beispiel zeigt die entsprechenden Dateien für den Editor nano:
  /var/lib/dpkg/info# ls -l nano*
  /var/lib/dpkg/info# ls -l nano*
  -rw-r--r-- 1 root root     12 Jul 16 2014 nano.conffiles
  -rw-r--r-- 1 root root 12 Jul 16 2014 nano.conffiles
  -rw-r--r-- 1 root root   4557 Apr 2 2016 nano.list
  -rw-r--r-- 1 root root 4557 Apr 2 2016 nano.list
  -rw-r--r-- 1 root root   5246 Jul 16 2014 nano.md5sums
  -rw-r--r-- 1 root root 5246 Jul 16 2014 nano.md5sums
  -rwxr-xr-x 1 root root     582 Jul 16 2014 nano.postinst
  -rwxr-xr-x 1 root root 582 Jul 16 2014 nano.postinst
  -rwxr-xr-x 1 root root     160 Jul 16 2014 nano.postrm
  -rwxr-xr-x 1 root root 160 Jul 16 2014 nano.postrm
  -rwxr-xr-x 1 root root     153 Jul 16 2014 nano.prerm
  -rwxr-xr-x 1 root root 153 Jul 16 2014 nano.prerm
Wenn Sie nach einer verunglückten Installation manuell das System aufräumen möchten, finden Sie immer in der entsprechenden .list Datei eine Aufstellung aller zum Programm gehörenden Dateien und Verzeichnisse. Im Falle von nano handelt es sich dabei übrigens um 64 über das System verteilte Dateien.
Wenn Sie nach einer verunglückten Installation manuell das System aufräumen möchten, finden Sie immer in der entsprechenden .list Datei eine Aufstellung aller zum Programm gehörenden Dateien und Verzeichnisse. Im Falle von nano handelt es sich dabei übrigens um 64 über das System verteilte Dateien.
==/var/lib/dpkg/status==
===/var/lib/dpkg/status===
In der Datei status sind Informationen über bereits installierte Pakete hinterlegt. Es wird auch angegeben, ob die Installation vollständig ausgeführt oder ob ein Programm bereits wieder deinstalliert wurde. Das Beispiel zeigt Informationen über
In der Datei status sind Informationen über bereits installierte Pakete hinterlegt. Es wird auch angegeben, ob die Installation vollständig ausgeführt oder ob ein Programm bereits wieder deinstalliert wurde. Das Beispiel zeigt Informationen über
einen korrekt installierten nano-Editor:
einen korrekt installierten nano-Editor:
  Package: nano
  Package: nano
Zeile 114: Zeile 108:
  Package: courier-imap
  Package: courier-imap
  Status: deinstall ok config-files
  Status: deinstall ok config-files
  Priority: extra
Priority: extra
  Section: mail
  Section: mail
  Installed-Size: 1540
  Installed-Size: 1540
  ... weitere Zeilen wurden abgeschnitten ...
  ... weitere Zeilen wurden abgeschnitten ...


==/var/lib/dpkg/available==
===/var/lib/dpkg/available===
Diese Datei enthält eine Liste der verfügbaren Pakete. Sie beinhaltet Informationen über die Größe des Paketes, die Versionsnummer, Abhängigkeiten, den Autor, die Prozessorarchitektur und vieles andere mehr. Das Beispiel zeigt einen Eintrag für den Editor nano:
Diese Datei enthält eine Liste der verfügbaren Pakete. Sie beinhaltet Informationen über die Größe des Paketes, die Versionsnummer, Abhängigkeiten, den Autor, die Prozessorarchitektur und vieles andere mehr. Das Beispiel zeigt einen Eintrag für den Editor nano:
  Package: nanontp
  Package: nanontp
  Priority: important
  Priority: important
Zeile 137: Zeile 131:
  ... weitere Zeilen wurden abgeschnitten ..
  ... weitere Zeilen wurden abgeschnitten ..


==/etc/apt/apt.conf==
===/etc/apt/apt.conf===
Hierbei handelt es sich um die Konfigurationsdatei für die apt-tools.Normalerweise ist hier nur ein Eintrag für den verwendeten Proxy hinterlegt,damit apt-get ohne Probleme Pakete aus dem Internet herunterladen kann. Beispiel:
Hierbei handelt es sich um die Konfigurationsdatei für die apt-tools.Normalerweise ist hier nur ein Eintrag für den verwendeten Proxy hinterlegt,damit apt-get ohne Probleme Pakete aus dem Internet herunterladen kann. Beispiel:
  debian:/# cat /etc/apt/apt.conf
  debian:/# cat /etc/apt/apt.conf
  Acquire::http::Proxy "http://192.168.0.1:3128";
  Acquire::http::Proxy "http://192.168.0.1:3128";


==/etc/apt/sources.list==
===/etc/apt/sources.list===
Diese Datei enthält die Quellen für  
Diese Datei enthält die Quellen für
apt-tools. Das ist meistens eine Liste mit FTP-Servern oder auch HTTP-Servern,von denen Software mittels apt-tools online installiert werden kann.Zusätzlich sind natürlich auch lokale Quellen in dieser Datei enthalten.Beispiel:
apt-tools. Das ist meistens eine Liste mit FTP-Servern oder auch HTTP-Servern,von denen Software mittels apt-tools online installiert werden kann.Zusätzlich sind natürlich auch lokale Quellen in dieser Datei enthalten.Beispiel:
  # cat /etc/apt/sources.list
  # cat /etc/apt/sources.list
  deb cdrom:[Debian GNU/Linux 9.3.0 _Stretch_ - Official amd64 DVD Binary-1  
  deb cdrom:[Debian GNU/Linux 9.3.0 _Stretch_ - Official amd64 DVD Binary-1
  20171209-12:11]/ stretch contrib main
  20171209-12:11]/ stretch contrib main
  deb http://ftp.halifax.rwth-aachen.de/debian/ stretch main
  deb http://ftp.halifax.rwth-aachen.de/debian/ stretch main
Zeile 157: Zeile 151:
  deb-src http://ftp.halifax.rwth-aachen.de/debian/ stretch-updates main contrib
  deb-src http://ftp.halifax.rwth-aachen.de/debian/ stretch-updates main contrib


[[Kategorie:Linux/Software/Verwaltung]]
[[Kategorie:Linux/Software/Verwaltung]]
[[Kategorie:Linux/LPIC/101]]
[[Kategorie:Linux/LPIC/101]]
[[Kategorie:Debian]]
[[Kategorie:Debian]]

Aktuelle Version vom 10. Oktober 2024, 08:24 Uhr

Grundlegende Packagverwaltung

  • Paket-Manager sind auch als Paketverwaltung oder Package Manager bekannt.
  • Die Termini bezeichnen eine Sammlung von Werkzeugen für die komfortable Verwaltung von Computer-Software auf Betriebssystemen, welche die Paketverwaltung zur Installation des Pakets am System vornehmen muss, werden von dieser aus dem Paket ausgelesen und umgesetzt.
  • Erkennt die Paketverwaltung dabei, dass noch weitere Software für das Funktionieren benötigt wird.
  • Soll eine installierte Software gelöscht werden, nimmt die Paketverwaltung dann wieder die Informationen des Pakets, um es anhand dessen Konfiguration zu ändern und Dateien zu löschen.
  • Paketinformationen erhalten, wie Version, Inhalt, Abhängigkeiten, Integrität des Paketes und Installationsstatus ob das Paket installiert ist oder nicht.


Aufruf Beschreibung
apt install Paket paket installieren
apt upgrade Paket' paket aktualisieren
apt remove Paket paket deinstallieren
apt list --installed installierte Pakete auflisten
apt list Paket' Informationen und Status des Pakets anzeigen
apt-cache rdepends Paket Abhängigkeiten anzeigen
aptitude show 'Paket' Suche in allen verfügbaren Paketen

DPKG-Programme

dpkg

Wenn Sie ein Programm auf einem Debian-basierten System installieren wollen, das als Debian-Paket vorliegt, verwenden Sie das Kommando dpkg.

  • Heutzutage wird man allerdings Installationsprogrammen, wie apt oder apt-get den Vorzug geben, weil diese etliche Vorteile gegenüber dpkg bieten.
  • Viele Optionen von dpkg können sowohl in der kurzen als auch in der langen Notation übergeben werden.

Die beiden folgen den Kommandos installieren jeweils ein Paket:

debian:/pakete# dpkg -i fortune_1.0-861_i386.deb
debian:/pakete# dpkg --install fortune_1.0-861_i386.deb

Entsprechend ist die Ausgabe, die von diesen beiden Kommandos erzeugt wird, ebenfalls identisch:

Wähle vormals abgewähltes Paket fortune.
(Lese Datenbank ... 75945 Dateien und Verzeichnisse sind derzeit installiert.)
Entpacke fortune (aus fortune_1.0-861_i386.deb) ...
Richte fortune ein (1.0-861) ...

Die Deinstallation eines Programms erfolgt wahlweise mithilfe der Schalter

Unix GNU Beschreibung
-r --remove Hierbei bleiben eventuelle Konfigurationsdateien eines Programms erhalten. Wenn Konfigurationsdateien ebenfalls aus dem System entfernt werden sollen, müssen Sie die Optionen
-P --purge verwenden. Es folgt eine Auflistung der wichtigsten Optionen für die Prüfung:
-i --install installiert das angegebene Paket
-r --remove entfernt das angegebene Paket. Konfigurationsdateien bleiben aber erhalten. Achtung! Die Option
-e ist nicht, wie bei RPM,die Erase-Funktion!
-P --purge entfernt das angegebene Programm inklusive der Konfigurationsdateien
-s --status gibt umfangreiche Informationen über das installierte Paket aus
-C --audit zeigt Pakete an, die nur teilweise auf dem System installiert sind
-L --listfileszeigt die Dateien an, die ein Paket installiert hat

dselect

dselect ist ein Frontend für dpkg

Operationen

  • Zugriffsmethode auswählen
  • Liste verfügbarer Pakete erneuern
  • Auswahl von Pakete
  • Pakete installieren und aktualisieren
  • nicht konfigurierten Pakete konfigurieren
  • Software löschen

dpkg-reconfigure

  • Mit dpkg-reconfigure können Sie ein bereits installiertes Paket neu konfigurieren.
  • Mit dpkg-reconfigure-a können Sie sogar alle installierten Pakete neu konfigurieren.
  • Dieser Vorgang kann aber in Abhängigkeit von der Menge der installierten Pakete sehr viel Zeit in Anspruch nehmen.

Konfiguration

Konfigurationsdateien und Verzeichnisse

/etc/dpkg/dpkg.cfg

Das ist die Konfigurationsdatei für dpkg.In dieser Datei werden die voreingestellten Optionen für dpkg festgelegt. Sie können sich dabei Arbeitsaufwand ersparen, wenn Sie immer dieselben Optionen mit dpkg verwenden. Die Datei wird zeilensepariert ausgewertet. Es steht also in jeder Zeile nur eine Option.Bei den meisten aktuellen Distributionen enthält die Datei im Auslieferungszustand nur eine einzige Zeile, mit der die Logdatei definiert wird:

log /var/log/dpkg.log

/var/lib/dpkg/info

In diesem Verzeichnis befinden sich zu jedem installierten Paket mehrere Skripte und Dateien, die für eine korrekte Installation und auch später wieder für die Deinstallation benötigt werden. Das Beispiel zeigt die entsprechenden Dateien für den Editor nano:

/var/lib/dpkg/info# ls -l nano*
-rw-r--r-- 1 root root 12 Jul 16 2014 nano.conffiles
-rw-r--r-- 1 root root 4557 Apr 2 2016 nano.list
-rw-r--r-- 1 root root 5246 Jul 16 2014 nano.md5sums
-rwxr-xr-x 1 root root 582 Jul 16 2014 nano.postinst
-rwxr-xr-x 1 root root 160 Jul 16 2014 nano.postrm
-rwxr-xr-x 1 root root 153 Jul 16 2014 nano.prerm

Wenn Sie nach einer verunglückten Installation manuell das System aufräumen möchten, finden Sie immer in der entsprechenden .list Datei eine Aufstellung aller zum Programm gehörenden Dateien und Verzeichnisse. Im Falle von nano handelt es sich dabei übrigens um 64 über das System verteilte Dateien.

/var/lib/dpkg/status

In der Datei status sind Informationen über bereits installierte Pakete hinterlegt. Es wird auch angegeben, ob die Installation vollständig ausgeführt oder ob ein Programm bereits wieder deinstalliert wurde. Das Beispiel zeigt Informationen über einen korrekt installierten nano-Editor:

Package: nano
Status: install ok installed
Priority: important
Section: editors
Installed-Size: 1624
... weitere Zeilen wurden abgeschnitten ...

Der nächste Eintrag zeigt ein Paket, das sauber deinstalliert wurde:

Package: courier-imap
Status: deinstall ok config-files
Priority: extra
Section: mail
Installed-Size: 1540
... weitere Zeilen wurden abgeschnitten ...

/var/lib/dpkg/available

Diese Datei enthält eine Liste der verfügbaren Pakete. Sie beinhaltet Informationen über die Größe des Paketes, die Versionsnummer, Abhängigkeiten, den Autor, die Prozessorarchitektur und vieles andere mehr. Das Beispiel zeigt einen Eintrag für den Editor nano:

Package: nanontp
Priority: important
Section: editors
Installed-Size: 1624
Maintainer: Ubuntu Core Developers <ubuntu-devel@lists.ubuntu.com>
Architecture: i386
Version: 2.0.2-1
eplaces: pico
Provides: editor
Depends: libc6 (>= 2.5-0ubuntu1), libncursesw5 (>= 5.4-5)
Suggests: spell
Conflicts: nano-tiny (<= 1.0.0-1), pico
Size: 286950
Description: free Pico clone with some new features
... weitere Zeilen wurden abgeschnitten ..

/etc/apt/apt.conf

Hierbei handelt es sich um die Konfigurationsdatei für die apt-tools.Normalerweise ist hier nur ein Eintrag für den verwendeten Proxy hinterlegt,damit apt-get ohne Probleme Pakete aus dem Internet herunterladen kann. Beispiel:

debian:/# cat /etc/apt/apt.conf
Acquire::http::Proxy "http://192.168.0.1:3128";

/etc/apt/sources.list

Diese Datei enthält die Quellen für apt-tools. Das ist meistens eine Liste mit FTP-Servern oder auch HTTP-Servern,von denen Software mittels apt-tools online installiert werden kann.Zusätzlich sind natürlich auch lokale Quellen in dieser Datei enthalten.Beispiel:

# cat /etc/apt/sources.list
deb cdrom:[Debian GNU/Linux 9.3.0 _Stretch_ - Official amd64 DVD Binary-1
20171209-12:11]/ stretch contrib main
deb http://ftp.halifax.rwth-aachen.de/debian/ stretch main
deb-src http://ftp.halifax.rwth-aachen.de/debian/ stretch main
deb http://security.debian.org/debian-security stretch/updates main contrib
deb-src http://security.debian.org/debian-security stretch/
updates main contrib
# stretch-updates, previously known as 'volatile'
deb http://ftp.halifax.rwth-aachen.de/debian/ stretch-updates main contrib
deb-src http://ftp.halifax.rwth-aachen.de/debian/ stretch-updates main contrib