Das Installieren von Anwendungen über die Befehlszeile ist in Ubuntu/Debian recht einfach. Alles, was Sie tun müssen, ist apt install package_name.
zu verwendenAber was ist, wenn Sie die Abhängigkeiten eines Pakets vor oder nach der Installation wissen möchten?
In diesem Tutorial zeige ich Ihnen verschiedene Möglichkeiten, die Abhängigkeiten eines Pakets in Ubuntu und anderen Debian-basierten Linux-Distributionen anzuzeigen, die das APT-Paketverwaltungssystem verwenden.
Was ist Paketabhängigkeit in Ubuntu?
Wenn Sie es noch nicht wussten, wenn Sie ein Softwarepaket unter Linux installieren, benötigt es manchmal andere Pakete, um richtig zu funktionieren. Diese zusätzlichen Pakete werden Abhängigkeiten genannt. Wenn diese Abhängigkeitspakete nicht auf dem System installiert sind, werden sie normalerweise automatisch mit dem Paket installiert.
Beispielsweise benötigt das GUI-Tool HandBrake zum Konvertieren von Videoformaten FFmpeg, GStreamer. Also für HandBrake sind FFmpeg und GStreamer die Abhängigkeiten.
Wenn Sie diese Pakete nicht auf Ihrem System installiert haben, werden sie automatisch installiert, wenn Sie HandBrake auf Ubuntu installieren.
Überprüfen Sie die Abhängigkeiten eines Pakets in Ubuntu- und Debian-basierten Distributionen
Wie so oft unter Linux gibt es mehrere Möglichkeiten, dasselbe Ergebnis zu erzielen. Sehen wir uns verschiedene Möglichkeiten an, um die Abhängigkeiten eines Pakets anzuzeigen.
Abhängigkeiten mit apt show prüfen
Sie können den Befehl apt show verwenden, um Details eines Pakets anzuzeigen. Ein Teil dieser Informationen sind Abhängigkeiten und Sie können es in der Zeile sehen, die mit Depends beginnt.
Folgendes wird beispielsweise für das Paket ubuntu-restricted-extras angezeigt.
[email protected]:~$ apt show ubuntu-restricted-extras
Package: ubuntu-restricted-extras
Version: 67
Priority: optional
Section: multiverse/metapackages
Origin: Ubuntu
Maintainer: Ubuntu Developers <[email protected]>
Bugs: https://bugs.launchpad.net/ubuntu/+filebug
Installed-Size: 14.3 kB
Depends: ubuntu-restricted-addons
Recommends: libavcodec-extra, ttf-mscorefonts-installer, unrar
Download-Size: 3,200 B
APT-Manual-Installed: yes
APT-Sources: http://us.archive.ubuntu.com/ubuntu focal/multiverse amd64 Packages
Description: Commonly used media codecs and fonts for Ubuntu
This collection of packages includes:
- MP3 and other audio codec software to play various audio formats
(GStreamer plugins)
- software to install the Microsoft Web fonts
- the Adobe Flash plugin
- LAME, software to create compressed audio files.
.
This software does not include libdvdcss2, and will not let you play
encrypted DVDs. For more information, see
https://help.ubuntu.com/community/RestrictedFormats/PlayingDVDs
.
These software packages are from the Multiverse channel, restricted by
copyright or legal issues in some countries. For more information, see
http://www.ubuntu.com/ubuntu/licensing
Wie Sie sehen, hängt das Paket ubuntu-restricted-extras vom Paket ubuntu-restricted-addons ab.
Hier ist ein Haken! Das Abhängigkeitspaket kann auch von einem anderen Paket abhängen, und die Kette könnte fortgesetzt werden. Zum Glück übernimmt der APT-Paketmanager dies für Sie, indem er (meistens) automatisch alle Abhängigkeiten installiert.
Was ist ein empfohlenes Paket?
Haben Sie in der obigen Ausgabe die Zeile bemerkt, die mit Recommends beginnt?
Empfohlene Pakete sind keine direkten Abhängigkeiten für das Paket, aber sie aktivieren zusätzliche Funktionen.
Wie Sie sehen können, hat ubuntu-restricted-extras ttf-mscorefonts-installer als empfohlenes Paket für die Installation von Microsoft Fonts auf Ubuntu.
Die empfohlenen Pakete werden auch standardmäßig installiert, und wenn Sie die Installation des empfohlenen Pakets ausdrücklich verbieten möchten, verwenden Sie das Flag –no-install-recommends wie folgt:
sudo apt install –no-install-recommends Paketname
Verwenden Sie apt-cache, um nur die Abhängigkeitsinformationen zu erhalten
Die passende Show hat viel zu viele Informationen. Wenn Sie die Abhängigkeiten in einem Skript erhalten möchten, erhalten Sie mit dem Befehl apt-cache eine bessere und saubere Ausgabe.
apt-cache depends package_name
Die Ausgabe sieht viel sauberer aus, nicht wahr?
Überprüfen Sie die Abhängigkeiten einer DEB-Datei mit dpkg
Sowohl apt als auch der Befehl apt-cache funktionieren mit den Paketen, die in den Repositories verfügbar sind. Wenn Sie jedoch eine DEB-Datei herunterladen, funktionieren diese Befehle nicht.
In diesem Fall können Sie den Befehl dpkg mit der Option -I oder –info verwenden.
dpkg -I path_to_deb_file
Die Abhängigkeiten sind in der Zeile zu sehen, die mit Depends.
beginntÜberprüfen von Abhängigkeiten und umgekehrten Abhängigkeiten mit apt-rdepends
Wenn Sie weitere Details zu den Abhängigkeiten wünschen, können Sie das Tool apt-rdepends verwenden. Dieses Tool erstellt den vollständigen Abhängigkeitsbaum. Sie erhalten also die Abhängigkeit eines Pakets und auch die Abhängigkeiten der Abhängigkeiten.
Es ist kein normaler apt-Befehl und Sie müssen ihn aus dem Universe-Repository installieren:
sudo apt install apt-rdepends
Die Ausgabe ist je nach Abhängigkeitsbaum normalerweise ziemlich groß.
Reading package lists... Done
Building dependency tree
Reading state information... Done
shutter
Depends: procps
Depends: xdg-utils
imagemagick
Depends: imagemagick-6.q16 (>= 8:6.9.2.10+dfsg-2~)
imagemagick-6.q16
Depends: hicolor-icon-theme
Depends: libc6 (>= 2.4)
Depends: libmagickcore-6.q16-6 (>= 8:6.9.10.2)
Depends: libmagickwand-6.q16-6 (>= 8:6.9.10.2)
hicolor-icon-theme
libc6
Depends: libcrypt1 (>= 1:4.4.10-10ubuntu4)
Depends: libgcc-s1
libcrypt1
Depends: libc6 (>= 2.25)
Das Tool apt-rdepends ist sehr vielseitig. Es kann auch die umgekehrten Abhängigkeiten berechnen. Das heißt, Sie können sehen, welche anderen Pakete von einem bestimmten Paket abhängen.
apt-rdepends -r package_name
Die Ausgabe könnte ziemlich groß sein, da sie den umgekehrten Abhängigkeitsbaum ausgibt.
[email protected]:~$ apt-rdepends -r ffmpeg
Reading package lists... Done
Building dependency tree
Reading state information... Done
ffmpeg
Reverse Depends: ardour-video-timeline (>= 1:5.12.0-3ubuntu4)
Reverse Depends: deepin-screen-recorder (5.0.0-1build2)
Reverse Depends: devede (4.15.0-2)
Reverse Depends: dvd-slideshow (0.8.6.1-1)
Reverse Depends: green-recorder (>= 3.2.3)
Ich hoffe, dieses kurze Tutorial war hilfreich, um Ihr Wissen über die Befehlszeile ein wenig zu verbessern. Bleiben Sie dran für weitere solche Tipps.