GNU/Linux >> Tutoriales Linux >  >> Linux

Cómo ver y extraer archivos de paquetes rpm, deb, depot y msi

Pregunta: ¿Cómo veo o extraigo los archivos que se incluyen dentro de los paquetes de varios sistemas operativos? Por ejemplo, me gustaría saber cómo ver (y extraer) el contenido de un archivo rpm, deb, depot o msi .

Respuesta: Puede usar herramientas como rpm, rpm2cpio, ar, dpkg, tar, swlist, swcopy, lessmsi como se explica a continuación.

1. Paquete RPM en Redhat / CentOS / Fedora

Listar los archivos de un paquete RPM usando rpm -qlp

RPM significa administrador de paquetes de Red Hat. El siguiente ejemplo muestra cómo ver los archivos disponibles en un paquete RPM sin extraer ni instalar el paquete 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

Explicación del comando:rpm -qlp ovpc-2.1.10.rpm

  • rpm — comando
  • q — consultar el archivo rpm
  • l — enumera los archivos en el paquete
  • p — especifica el nombre del paquete

Extracción de archivos de un paquete RPM usando rpm2cpio y cpio

RPM es una especie de archivo cpio. Primero, convierta el archivo rpm a cpio usando el comando rpm2cpio. Luego, use el comando cpio para extraer los archivos del archivo como se muestra a continuación.

$ 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. Paquete Deb en Debian

deb es la extensión del formato del paquete de software Debian. *.deb también se usa en otras distribuciones basadas en Debian. (por ejemplo:Ubuntu usa *.deb)

Listar los archivos de un paquete debian usando dpkg -c

dpkg es el administrador de paquetes de Debian. Entonces, usando el comando dpkg puede enumerar y extraer los paquetes, como se muestra a continuación.

Para ver el contenido del archivo *.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   

Extracción de archivos de un paquete debian usando dpkg -x

Use dpkg -x para extraer los archivos de un paquete deb como se muestra a continuación.

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

Los archivos DEB son archivos ar, que siempre contienen los tres archivos:debian-binary, control.tar.gz y data.tar.gz. Podemos usar el comando ar y el comando tar para extraer y ver los archivos del paquete deb, como se muestra a continuación.

Primero, extraiga el contenido del archivo de almacenamiento *.deb usando el comando ar.

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

A continuación, extraiga el contenido del archivo data.tar.gz como se muestra a continuación.

$ 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. Paquete de almacén en HP-UX

Enumerar los archivos de un paquete de depósito usando tar y swlist

El archivo DEPOT es un archivo Depot del catálogo del distribuidor de software de HP-UX. Los depósitos de HP-UX son solo un archivo tar, con información adicional, como se muestra a continuación.

$ 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 es un comando de HP-UX que se utiliza para mostrar la información sobre el software. Vea el contenido del paquete de depósito como se muestra a continuación usando el 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

Extracción de archivos de un paquete de depósito mediante swcopy

El comando Swcopy copia o fusiona selecciones_de_software de una fuente de software a una o más selecciones_de_destino de almacén de software. Usando la opción de descompresión en swcopy, puede extraer los archivos de un paquete de software de depósito.

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

Dado que los archivos de almacén son archivos tar, puede extraerlos usando la extracción normal de tar como se muestra a continuación.

$ tar -xvf filename

4. MSI en Windows

El instalador de Microsoft es un motor para la instalación, mantenimiento y eliminación de software en sistemas Windows.

Listar los archivos de un paquete MSI usando lessmsi

La utilidad llamada lessmsi.exe se usa para ver los archivos de los paquetes msi sin instalar. La misma utilidad también se usa para extraer el paquete msi. Seleccione el msi en el que desea ver el contenido. lessmsi enumerará los archivos disponibles en msi.

Extracción de archivos de un paquete MSI usando msiexec

La herramienta Windows Installer (Msiexec.exe) se utiliza para extraer los archivos del paquete MSI. Puede abrir un paquete MSI en el modo de instalación "Administrador", donde puede extraer los archivos sin realizar la instalación como se muestra a continuación.

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

Linux
  1. Cómo crear paquetes desde el origen mediante CheckInstall

  2. Cómo consultar archivos, paquetes y repositorios en Linux

  3. Cómo extraer archivos .gz y .tar.gz en Linux

  4. ¿Cómo mover archivos y ver el progreso (por ejemplo, con una barra de progreso)?

  5. Cómo extraer el paquete RPM sin instalarlo

Cómo descargar y extraer archivos Tar con un solo comando

Cómo convertir paquetes entre .deb y .rpm

Cómo instalar y administrar paquetes en CentOS usando RPM

Cómo instalar paquetes RPM en CentOS 8

Cómo crear un paquete RPM a partir de un Tarball

Cómo instalar y administrar paquetes RPM en el sistema Ubuntu/Debian