Cómo extraer archivos del archivo del paquete RPM

Cómo extraer archivos del archivo del paquete RPM

Este breve artículo le mostrará cómo extraer un archivo único o múltiple de un archivo de paquete RPM. Para comenzar primero descargamos un paquete de muestra Hola.

$ wget ftp: // rpmfind.net/linux/opensuse/factory/repo/oss/suse/x86_64/hello-2.9-4.3.x86_64.rpm $ ls hello-2.9-4.3.x86_64.rpm 

Ahora tenemos una opción extraer todo o un solo archivo del archivo de paquete RPM anterior. El siguiente comando Linux extraerá todo el archivo en nuestro directorio de trabajo actual:

$ rpm2cpio hello-2.9-4.3.x86_64.RPM | CPIO -ID 525 Bloques $ LS Hello -2.9-4.3.x86_64.RPM USR 

Lo anterior rpm2cpio Primero convierte el archivo de rpm a CPIO. Luego pasamos su stdout a un CPIO comando que lo toma como una entrada y extrae su contenido -i en directorios apropiados -d. Como resultado el USR El directorio ahora contiene todos los archivos extraídos del Hola-2.9-4.3.x86_64.rpm Archivo de paquetes de rpm.

Alternativamente, podemos extraer un archivo único/seleccionado del archivo del paquete RPM. Para hacer esto, primero necesitamos enumerar un contenido del paquete RPM sin extraer su contenido. El comando Bellow solo enumerará un contenido del paquete RPM Hola-2.9-4.3.x86_64.rpm

$ rpm -lqp hello -2.9-4.3.x86_64.ADVERTENCIA DE RPM: Hello-2.9-4.3.x86_64.RPM: encabezado V3 RSA/SHA256 Firma, ID de clave 3DBDC284: Nokey/usr/bin/hello/usr/share/doc/paquetes/hello/usr/share/doc/paquetes/hello/acerca de nls/usr/compartir/doc/ /paquetes/hola/copy/usr/share/doc/paquetes/hola/news/usr/compartir/doc/paquetes/hello/hello/readme/usr/share/doc/paquetes/hola/gracias/usr/compartir/doc/paquetes /hola/todo/usr/share/info/hola.información.gz/usr/share/locale/bg/lc_messages/hola.mo/usr/share/locale/ca/lc_messages/hola.mo/usr/share/loce/da/lc_messages/hola.mo/usr/share/locale/de/lc_messages/hola.mo/usr/share/locale/el/lc_messages/hola.mo/usr/share/locale/eo/lc_messages/hola.mo/usr/share/locale/es/lc_messages/hola.mo/usr/share/locale/et/lc_messages/hola.mo/usr/share/locale/eu/lc_messages/hola.mo/usr/share/locale/fa/lc_messages/hola.mo/usr/share/locale/fi/lc_messages/hola.mo/usr/share/locale/fr/lc_messages/hola.mo/usr/share/locale/ga/lc_messages/hola.mo/usr/share/locale/gl/lc_messages/hola.mo/usr/share/locale/he/lc_messages/hola.MO/usr/share/locale/hr/lc_messages/hola.mo/usr/share/locale/hu/lc_messages/hola.MO/usr/share/locale/id/lc_messages/hola.mo/usr/share/locale/it/lc_messages/hola.mo/usr/share/locale/ja/lc_messages/hola.MO/usr/share/locale/ko/lc_messages/hola.mo/usr/share/locale/lv/lc_messages/hola.mo/usr/share/locale/nb/lc_messages/hola.mo/usr/share/locale/nl/lc_messages/hola.mo/usr/share/locale/nn/lc_messages/hola.mo/usr/share/locale/pl/lc_messages/hola.mo/usr/share/locale/pt/lc_messages/hola.MO/usr/share/locale/pt_br/lc_messages/hello.MO/usr/share/locale/ro/lc_messages/hola.mo/usr/share/locale/ru/lc_messages/hola.mo/usr/share/locale/sk/lc_messages/hola.mo/usr/share/loce/sl/lc_messages/hola.mo/usr/share/locale/sr/lc_messages/hola.MO/usr/share/locale/sv/lc_messages/hello.mo/usr/share/locale/th/lc_messages/hola.mo/usr/share/locale/tr/lc_messages/hola.Mo/usr/share/loce/uk/lc_messages/hola.mo/usr/share/locale/vi/lc_messages/hola.MO/usr/share/locale/zh_cn/lc_messages/hello.MO/usr/share/locale/zh_tw/lc_messages/hello.mo/usr/share/man/man1/hola.1.GZ 

Use el siguiente comando de Linux para extraer un solo archivo /usr/bin/hola Desde el paquete RPM y guárdelo en EG. /TMP/ directorio:

$ rpm2cpio hello-2.9-4.3.x86_64.RPM | CPIO -IV - -To -Stout ./usr/bin/hello>/tmp/hello 

Todo hecho el Hola ejecutable binario ahora se ha guardado en /TMP/ directorio:

$ chmod +x /tmp /hola $ /tmp /hola hola, mundo! 

Tutoriales de Linux relacionados:

  • Descarga del archivo WGet en Linux
  • Cómo conectarse a un servidor FTP usando Python
  • Configurar servidor FTP en Linux
  • Lista e instalación de clientes FTP en Ubuntu 20.04 Linux ..
  • Lista e instalación de clientes FTP en Ubuntu 22.04 Linux ..
  • Cómo crear y extraer archivos de CPIO en ejemplos de Linux
  • Cómo configurar el servidor FTP/SFTP y el cliente en Almalinux
  • Cosas para instalar en Ubuntu 20.04
  • Tutorial LFTP sobre Linux con ejemplos
  • Cómo instalar VScode de código abierto sin telemetría en Linux