GNU/Linux >> LINUX-Kenntnisse >  >> Linux

So listen Sie den Inhalt eines Pakets in Linux auf

Wir wussten bereits, wie man installierte Pakete auflistet und auch, wie man die Abhängigkeiten eines Pakets auflistet unter Linux. Heute werden wir sehen, wie man den Inhalt eines Pakets in Linux auflistet. Dabei spielt es keine Rolle, ob das Paket installiert ist oder nicht. Es ist möglich, den Inhalt eines installierten oder nicht installierten Pakets zu lesen.

Unter Linux und Unix landen die meisten Programme normalerweise nicht in einem einzigen Verzeichnis. Wenn Sie ein Paket installieren, werden alle Dateien in diesem Paket über das Dateisystem verteilt und in verschiedenen Pfaden gespeichert. Normalerweise werden die ausführbaren Dateien (z. B. die Binärdateien/Skripte) in den Verzeichnissen ‚/bin‘ oder ‚/usr/bin‘ oder ‚/usr/local/bin‘ gespeichert, Bibliotheksdateien in ‚/usr/lib‘, Konfigurationsdateien in '/etc', statische Daten in '/usr/share' und so weiter. Lassen Sie uns nun die Liste der Dateien in einem Paket finden und wo sie tatsächlich in Linux gespeichert sind.

Listen Sie den Inhalt eines Pakets in Linux auf

Zuerst werden wir sehen, wie der Inhalt eines Pakets in DEB-basierten Systemen gelesen wird, zum Beispiel Ubuntu.

Listen Sie den Inhalt eines installierten Pakets in Ubuntu auf

Ich habe Microsoft Teams bereits installiert Paket in meinem Ubuntu 20.04 Desktop.

Um den Inhalt des Microsoft Teams-Pakets anzuzeigen, führen Sie einfach Folgendes aus:

$ dpkg -L teams

Beispielausgabe:

/.
/usr
/usr/bin
/usr/bin/teams
/usr/share
/usr/share/applications
/usr/share/applications/teams.desktop
/usr/share/pixmaps
/usr/share/pixmaps/teams.png
/usr/share/teams
.
.
.

/usr/share/teams/swiftshader/libEGL.so
/usr/share/teams/swiftshader/libGLESv2.so
/usr/share/teams/teams
/usr/share/teams/v8_context_snapshot.bin

Sehen? Die obige Ausgabe zeigt die vom Teams-Paket installierten Dateien und ihren Speicherort in meinem Ubuntu-System.

Hier ist eine andere Möglichkeit, den Inhalt eines installierten Pakets in Ubuntu anzuzeigen:

$ dpkg-query -L teams

Listen Sie den Inhalt eines nicht installierten Pakets in Ubuntu auf

Wie ich bereits sagte, zeigen die obigen Befehle den Inhalt eines installierten Pakets an. Was ist, wenn das Paket nicht installiert ist und Sie seinen Inhalt lesen möchten? Es ist auch möglich! Sie können herausfinden, welche Dateien von einem Paket installiert werden, noch bevor Sie es installieren.

Laden Sie zuerst die .deb-Datei herunter. Ich habe die DEB-Datei der Teams-Anwendung bereits heruntergeladen. Gehen Sie zu dem Ort, an dem Sie die .deb-Datei heruntergeladen haben, und führen Sie den folgenden Befehl aus, um ihren Inhalt anzuzeigen:

$ dpkg --contents teams_1.2.00.32451_amd64.deb

Oder,

$ dpkg -c teams_1.2.00.32451_amd64.deb

Beispielausgabe:

drwxr-xr-x root/root         0 2019-11-20 20:55 ./
drwxr-xr-x root/root         0 2019-11-20 20:54 ./usr/
drwxr-xr-x root/root         0 2019-11-20 20:54 ./usr/bin/
-rwxr-xr-x root/root       286 2019-11-20 20:54 ./usr/bin/teams
drwxr-xr-x root/root         0 2019-11-20 20:54 ./usr/share/
drwxr-xr-x root/root         0 2019-11-20 20:54 ./usr/share/applications/
-rw-r--r-- root/root       352 2019-11-20 20:54 ./usr/share/applications/teams.desktop
.
.
.
-rwxr-xr-x root/root    286264 2019-11-20 20:54 ./usr/share/teams/swiftshader/libEGL.so
-rwxr-xr-x root/root   2677296 2019-11-20 20:54 ./usr/share/teams/swiftshader/libGLESv2.so
-rwxr-xr-x root/root 114944384 2019-11-20 20:54 ./usr/share/teams/teams
-rw-r--r-- root/root   1040824 2019-11-20 20:54 ./usr/share/teams/v8_context_snapshot.bin

Alternativ können Sie dies auch mit apt-file tun Werkzeug.

Installieren Sie die apt-Datei wie unten gezeigt, falls sie noch nicht installiert ist:

$ sudo apt install apt-file

Wenn Sie gerade apt-file installiert haben, ist der systemweite Cache möglicherweise leer. Sie müssen „apt-file update“ als root ausführen, um den Cache zu aktualisieren. Sie können „apt-file update“ auch als normaler Benutzer ausführen, um einen Cache im Home-Verzeichnis des Benutzers zu verwenden.

Lassen Sie uns den Datenbank-Cache mit dem Befehl aktualisieren:

$ sudo apt-file update

Listen Sie nun den Inhalt eines installierten Pakets auf, zum Beispiel vim, wie unten:

$ apt-file list vim

Beispielausgabe:

vim: /usr/bin/vim.basic 
vim: /usr/share/bug/vim/presubj
vim: /usr/share/bug/vim/script
vim: /usr/share/doc/vim/NEWS.Debian.gz
vim: /usr/share/doc/vim/changelog.Debian.gz
vim: /usr/share/doc/vim/copyright
vim: /usr/share/lintian/overrides/vim

Das apt-file-Tool wird auch verwendet, um nach den Paketen zu suchen, die eine bestimmte Datei bereitstellen. Suchen Sie beispielsweise nach dem Paket, das alisp.h bereitstellt Datei mit Befehl:

$ apt-file find alisp.h

Oder,

$ apt-file search alisp.h

Beispielausgabe:

libasound2-dev: /usr/include/alsa/alisp.h

Wie Sie sehen können, enthält das Paket "libasound2-dev" die Datei alisp.h.

Weitere Einzelheiten finden Sie unter folgendem Link.

  • So finden Sie das Paket, das eine bestimmte Datei in Linux bereitstellt

Dies sind einige Möglichkeiten, den Inhalt eines Pakets in DEB-basierten Systemen anzuzeigen. Sehen wir uns nun an, wie man den Paketinhalt in RPM-basierten Systemen auflistet, zum Beispiel CentOS.

Listen Sie den Inhalt eines installierten/nicht installierten Pakets in CentOS auf

In RPM-basierten Systemen wie CentOS können wir den Inhalt eines Pakets mit "repoquery" finden Befehl.

Das „yum-utils“-Paket stellt einen Repoquery-Befehl bereit, also lassen Sie uns ihn mit folgendem Befehl installieren:

$ sudo yum install yum-utils

Lassen Sie uns nun den Inhalt des "nano"-Editorpakets mit dem Befehl herausfinden:

# repoquery --installed --list nano

Oder,

# repoquery --list nano

Oder,

# repoquery -l nano

Beispielausgabe:

Last metadata expiration check: 0:03:02 ago on Tuesday 16 June 2020 06:01:46 PM IST.
/etc/nanorc
/usr/bin/nano
/usr/bin/rnano
/usr/lib/.build-id
/usr/lib/.build-id/d3
.
.
.
/usr/share/nano/tcl.nanorc
/usr/share/nano/tex.nanorc
/usr/share/nano/texinfo.nanorc
/usr/share/nano/xml.nanorc

Auf die gleiche Weise können Sie den Inhalt einer nicht installierten Datei auflisten. Gehen Sie zu dem Ort, an dem Sie die RPM-Datei heruntergeladen haben, und sehen Sie sich den Inhalt wie folgt an:

# repoquery --list nano-2.9.8-1.el8.x86_64.rpm

Verwandte Lektüre:

  • So laden Sie ein RPM-Paket mit allen Abhängigkeiten in CentOS herunter

Hoffe das hilft.


Linux
  1. So listen Sie alle Dateien auf, die vom DEB-Paket unter Ubuntu/Debian Linux installiert wurden

  2. So listen Sie Dateien auf, die von einem RPM- oder DEB-Paket in Linux installiert wurden

  3. So listen Sie installierte Pakete aus einem bestimmten Repository in Linux auf

  4. So listen Sie die Abhängigkeiten eines Pakets in Linux auf

  5. So finden Sie eine Liste der unter Linux installierten ODBC-Treiber

So finden Sie die Liste der installierten Repositories über die Befehlszeile in Linux

So zeigen Sie den Inhalt eines Archivs oder einer komprimierten Datei unter Linux an

So finden Sie die Liste der installierten Repositories in Linux

So finden Sie alle installierten Schriftarten in Linux

So verwenden Sie den Yum-Paket-Manager unter Rocky Linux 8

So listen Sie installierte Pakete in Linux mithilfe der Paketverwaltung auf