GNU/Linux >> Linux Esercitazione >  >> Linux

Come visualizzare ed estrarre file da pacchetti rpm, deb, depot e msi

Domanda: Come posso visualizzare o estrarre i file che sono raggruppati all'interno dei pacchetti di vari sistemi operativi. Ad esempio, vorrei sapere come visualizzare (ed estrarre) il contenuto di un file rpm, o deb, o depot, o msi .

Risposta: Puoi utilizzare strumenti come rpm, rpm2cpio, ar, dpkg, tar, swlist, swcopy, lessmsi come spiegato di seguito.

1. Pacchetto RPM in Redhat / CentOS / Fedora

Elencare i file da un pacchetto RPM usando rpm -qlp

RPM sta per Red Hat Package Manager. L'esempio seguente mostra come visualizzare i file disponibili in un pacchetto RPM senza estrarre o installare il pacchetto rpm.

$ rpm -qlp ovpc-2.1.10.rpm
/usr/src/ovpc/-5.10.0
/usr/src/ovpc/ovpc-2.1.10/examples
/usr/src/ovpc/ovpc-2.1.10/examples/bin
/usr/src/ovpc/ovpc-2.1.10/examples/lib
/usr/src/ovpc/ovpc-2.1.10/examples/test
.
.
.
/usr/src/ovpc/ovpc-2.1.10/pcs

Spiegazione del comando:rpm -qlp ovpc-2.1.10.rpm

  • rpm — comando
  • q — interroga il file rpm
  • l — elenca i file nel pacchetto
  • p — specifica il nome del pacchetto

Estrazione dei file da un pacchetto RPM utilizzando rpm2cpio e cpio

RPM è una sorta di archivio cpio. Innanzitutto, converti l'archivio rpm in cpio usando il comando rpm2cpio. Quindi, usa il comando cpio per estrarre i file dall'archivio come mostrato di seguito.

$ rpm2cpio ovpc-2.1.10.rpm | cpio  -idmv
./usr/src/ovpc/-5.10.0
./usr/src/ovpc/ovpc-2.1.10/examples
./usr/src/ovpc/ovpc-2.1.10/examples/bin
./usr/src/ovpc/ovpc-2.1.10/examples/lib
./usr/src/ovpc/ovpc-2.1.10/examples/test
.
.
.
./usr/src/ovpc/ovpc-2.1.10/pcs

$ ls .
usr

2. Pacchetto Deb in Debian

deb è l'estensione del formato del pacchetto software Debian. *.deb è utilizzato anche in altre distribuzioni basate su Debian. (ad esempio:Ubuntu usa *.deb)

Elencare i file da un pacchetto debian usando dpkg -c

dpkg è il gestore di pacchetti per debian. Quindi usando il comando dpkg puoi elencare ed estrarre i pacchetti, come mostrato di seguito.

Per visualizzare il contenuto del file *.deb:

$ dpkg -c ovpc_1.06.94-3_i386.deb
dr-xr-xr-x root/root         0 2010-02-25 10:54 ./                                                                                          
dr-xr-xr-x root/root         0 2010-02-25 10:54 ./ovpc/                                                                                    
dr-xr-xr-x root/root         0 2010-02-25 10:54 ./ovpc/pkg/                                                                            
dr-xr-xr-x root/root         0 2010-02-25 10:54 ./ovpc/pkg/lib/                                                                 
dr-xr-xr-x root/root         0 2010-02-25 10:48 ./ovpc/pkg/lib/header/                                                      
-r-xr-xr-x root/root       130 2009-10-29 17:06 ./ovpc/pkg/lib/header/libov.so                                   
.
.
.

-r-xr-xr-x root/root       131 2009-10-29 17:06 ./ovpc/pkg/etc/conf                                   
dr-xr-xr-x root/root         0 2010-02-25 10:54 ./ovpc/pkg/etc/conf/log.conf   

Estrarre i file da un pacchetto debian usando dpkg -x

Usa dpkg -x per estrarre i file da un pacchetto deb come mostrato di seguito.

$ dpkg -x  ovpc_1.06.94-3_i386.deb /tmp/ov
$ ls /tmp/ov
ovpc

I file DEB sono archivi ar, che contengono sempre i tre file:debian-binary, control.tar.gz e data.tar.gz. Possiamo usare il comando ar e il comando tar per estrarre e visualizzare i file dal pacchetto deb, come mostrato di seguito.

Per prima cosa, estrai il contenuto del file di archivio *.deb usando il comando ar.

$ ar -vx ovpc_1.06.94-3_i386.deb
x - debian-binary
x - control.tar.gz
x - data.tar.gz
$

Quindi, estrai il contenuto del file data.tar.gz come mostrato di seguito.

$ tar -xvzf data.tar.gz 
./                                                                             
./ovpc/                                                                         
./ovpc/pkg/                                                                     
./ovpc/pkg/lib/                                                             
./ovpc/pkg/lib/header/                                                      
./ovpc/pkg/lib/header/libov.so                                   
.
.
./ovpc/pkg/etc/conf                                   
./ovpc/pkg/etc/conf/log.con

3. Pacchetto Depot in HP-UX

Elencare i file da un pacchetto depot usando tar e swlist

Il file DEPOT è un file HP-UX Software Distributor Catalog Depot. I depot HP-UX sono solo un file tar, con alcune informazioni aggiuntive come mostrato di seguito.

$ tar -tf ovcsw_3672.depot
OcswServer/MGR/etc/
OcswServer/MGR/etc/opt/
OcswServer/MGR/etc/opt/OV/
OcswServer/MGR/etc/opt/OV/share/
OcswServer/MGR/etc/opt/OV/share/conf/
OcswServer/MGR/etc/opt/OV/share/conf/OpC/
OcswServer/MGR/etc/opt/OV/share/conf/OpC/opcctrlovw/

swlist è un comando HP-UX che viene utilizzato per visualizzare le informazioni sul software. Visualizza il contenuto del pacchetto depot come mostrato di seguito utilizzando il comando swlist.

$ swlist -l file -s /root/ovcsw_3672.depot
# Initializing...
# Contacting target "osgsw"...
#
# Target:  osgsw:/root/ovcsw_3672.depot
#

# OcswServer			8.50.000       Ocsw  Server product
# OcswServer.MGR     		9.00.140       Ocs Server Ovw
  /etc
  /etc/opt
  /etc/opt/OV
  /etc/opt/OV/share
  /etc/opt/OV/share/conf
  /etc/opt/OV/share/conf/OpC

Estrazione dei file da un pacchetto depot utilizzando swcopy

Il comando Swcopy copia o unisce software_selections da un'origine software a uno o più depot software target_selections. Usando l'opzione decomprimi in swcopy, puoi estrarre i file da un pacchetto software depot.

$ swcopy -x uncompress_files=true -x enforce_dependencies=false -s /root/ovcsw_3672.depot \* @ /root/extracted/
$ ls /root/extracted
MGR	catalog	 osmsw.log
$

Poiché depot file tar, puoi estrarre utilizzando la normale estrazione tar come mostrato di seguito.

$ tar -xvf filename

4. MSI in Windows

Il programma di installazione Microsoft è un motore per l'installazione, la manutenzione e la rimozione di software sui sistemi Windows.

Elencare i file da un pacchetto MSI utilizzando lessmsi

L'utilità denominata lessmsi.exe viene utilizzata per visualizzare i file dai pacchetti msi senza l'installazione. La stessa utilità viene utilizzata anche per estrarre il pacchetto msi. Seleziona l'msi di cui desideri visualizzare il contenuto. lessmsi elencherà i file disponibili in msi.

Estrazione dei file da un pacchetto MSI utilizzando msiexec

Lo strumento di installazione di Windows (Msiexec.exe) viene utilizzato per estrarre i file dal pacchetto MSI. Può aprire un pacchetto MSI in modalità di installazione "Amministratore", dove può estrarre i file senza eseguire l'installazione come mostrato di seguito.

C:\>msiexec /a ovcsw_3672.msi /qb TARGETDIR="C:\ovcsw"

Linux
  1. Come estrarre i file dall'archivio dei pacchetti Debian DEB

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

  3. Installa i pacchetti RPM su Ubuntu 11.10 e Ubuntu 11.04

  4. Come eseguire query su file, pacchetti e repository in Linux

  5. Come estrarre il pacchetto RPM senza installarlo

Come scaricare ed estrarre file Tar con un comando

Come convertire i pacchetti tra .deb e .rpm

Come installare e gestire i pacchetti su CentOS utilizzando RPM

Come installare i pacchetti RPM su CentOS 8

Come creare un pacchetto RPM da un Tarball

Come installare e gestire i pacchetti RPM sul sistema Ubuntu/Debian