GNU/Linux >> Linux Esercitazione >  >> Linux

Come elencare il contenuto di un pacchetto in Linux

Sapevamo già come elencare i pacchetti installati e anche come elencare le dipendenze di un pacchetto in Linux. Oggi vedremo come elencare il contenuto di un pacchetto in Linux. Non importa se il pacchetto è installato o meno. È possibile leggere il contenuto di un pacchetto installato o non installato.

In Linux e Unix, la maggior parte dei programmi di solito non finisce in una singola directory. Quando installi un pacchetto, tutti i file in quel pacchetto vengono sparsi nel filesystem e salvati in percorsi diversi. Di solito, i file eseguibili (ad es. i binari/script) sono archiviati nelle directory '/bin' o '/usr/bin' o '/usr/local/bin', i file di libreria in '/usr/lib', i file di configurazione in '/etc', dati statici in '/usr/share' e così via. Ora troviamo l'elenco dei file in un pacchetto e dove sono effettivamente archiviati in Linux.

Elenca il contenuto di un pacchetto in Linux

Per prima cosa vedremo come leggere il contenuto di un pacchetto in sistemi basati su DEB, ad esempio Ubuntu.

Elenca il contenuto di un pacchetto installato in Ubuntu

Ho già installato Microsoft Teams pacchetto nel mio desktop Ubuntu 20.04.

Per visualizzare i contenuti del pacchetto Microsoft Teams, esegui semplicemente:

$ dpkg -L teams

Risultato di esempio:

/.
/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

Vedere? L'output sopra mostra i file installati dal pacchetto Teams e la loro posizione nel mio sistema Ubuntu.

Ecco un altro modo per visualizzare il contenuto di un pacchetto installato in Ubuntu:

$ dpkg-query -L teams

Elenca il contenuto di un pacchetto non installato in Ubuntu

Come ho già detto, i comandi precedenti mostrano il contenuto di un pacchetto installato. Cosa succede se il pacchetto non è installato e si desidera leggerne il contenuto? È anche possibile! Puoi scoprire quali file verranno installati da un pacchetto anche prima di installarlo.

Per prima cosa scarica il file .deb. Ho già scaricato il file .deb dell'applicazione Teams. Vai alla posizione in cui hai scaricato il file .deb ed esegui il seguente comando per visualizzarne il contenuto:

$ dpkg --contents teams_1.2.00.32451_amd64.deb

Oppure,

$ dpkg -c teams_1.2.00.32451_amd64.deb

Risultato di esempio:

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

In alternativa, puoi farlo usando apt-file anche lo strumento.

Installa apt-file come mostrato di seguito se non è già installato:

$ sudo apt install apt-file

Se hai appena installato apt-file, la cache a livello di sistema potrebbe essere vuota. È necessario eseguire "apt-file update" come root per aggiornare la cache. Puoi anche eseguire "apt-file update" come utente normale per utilizzare una cache nella directory home dell'utente.

Aggiorniamo la cache del database usando il comando:

$ sudo apt-file update

Ora elenca il contenuto di un pacchetto installato, ad esempio vim, come di seguito:

$ apt-file list vim

Risultato di esempio:

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

Lo strumento apt-file viene utilizzato anche per cercare i pacchetti che forniscono un file specifico. Ad esempio, trova il pacchetto che fornisce alisp.h file con comando:

$ apt-file find alisp.h

Oppure,

$ apt-file search alisp.h

Risultato di esempio:

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

Come puoi vedere, il pacchetto "libasound2-dev" fornisce il file alisp.h.

Per maggiori dettagli, fare riferimento al seguente link.

  • Come trovare il pacchetto che fornisce un file specifico in Linux

Questi sono alcuni modi per visualizzare il contenuto di un pacchetto nei sistemi basati su DEB. Ora vediamo come elencare il contenuto del pacchetto nei sistemi basati su RPM, ad esempio CentOS.

Elenca il contenuto di un pacchetto installato/non installato in CentOS

Nei sistemi basati su RPM come CentOS, possiamo trovare il contenuto di un pacchetto usando "repoquery" comando.

Il pacchetto "yum-utils" fornisce il comando repoquery, quindi installiamolo usando il comando:

$ sudo yum install yum-utils

Ora scopriamo il contenuto del pacchetto dell'editor "nano" usando il comando:

# repoquery --installed --list nano

Oppure,

# repoquery --list nano

Oppure,

# repoquery -l nano

Risultato di esempio:

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

Allo stesso modo puoi elencare il contenuto di un file non installato. Vai alla posizione in cui hai scaricato il file rpm e visualizza il suo contenuto come di seguito:

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

Lettura correlata:

  • Come scaricare un pacchetto RPM con tutte le dipendenze in CentOS

Spero che questo aiuti.


Linux
  1. Come elencare tutti i file installati dal pacchetto DEB su Ubuntu/Debian Linux

  2. Come elencare i file installati da un pacchetto RPM o DEB in Linux

  3. Come elencare i pacchetti installati da un determinato repository in Linux

  4. Come elencare le dipendenze di un pacchetto in Linux

  5. Come trovare l'elenco dei driver ODBC installati su Linux

Come trovare l'elenco dei repository installati dalla riga di comando in Linux

Come visualizzare il contenuto di un archivio o di un file compresso in Linux

Come trovare l'elenco dei repository installati in Linux

Come trovare tutti i caratteri installati in Linux

Come utilizzare Yum Package Manager su Rocky Linux 8

Come elencare i pacchetti installati in Linux utilizzando la gestione dei pacchetti