¿Cuál es la forma más rápida de extraer un ISO?


34

Actualmente estoy montando un ISO en un directorio (solo lectura) (usando el mount -o loopcomando) y luego copiando el contenido a otro directorio normal. Esto lleva mucho tiempo ya que el ISO es grande. ¿Es esta la única forma de hacerlo, o hay alguna alternativa?


Puede echar un vistazo a mi solución: superuser.com/a/1180728/541106
MewX

Esto no es una mala manera ya que el ISO está montado en la RAM del sistema. Extraer con una herramienta debería llevar el mismo tiempo.
Dubis

Respuestas:


59

puedes hacer esto con el software 7zip:

sudo apt-get install p7zip-full

7z x iso_file.iso

en Fedora:

7za x iso_file.iso


1
Me funcionó con un ISO de Windows 8.1, para el cual (en Gnome) ni Nautilus ni Archive Manager pudieron mostrar el contenido.
krlmlr

44
Cuidado, "7za x" no funcionará, solo "7z x". ¡Gracias!
lzap

7za funciona en fedora, 7z no
Adam Kurkiewicz

Según esto , 7zno extraerá todos los archivos necesarios.
Ploni

7

bsdtar(parte de la biblioteca portátil ) puede analizar muchos formatos de archivo . Esto es útil para aquellos cuyos dedos están muy familiarizados con las opciones del alquitrán ( extraer, simplemente inspeccionar el contenido). bsdtar xfp foo.isobsdtar tf yoyoma.rpm

También hay un bsdcpio para aquellos que están familiarizados con cpioel uso.

Muchas distribuciones de Linux incluyen ahora bsdtar, bsdcpio y libarchive (a menudo como paquetes separados a pesar de que todo viene del código libarchive).


2

Montar la imagen o usar 7zip como ya se respondió son probablemente las dos únicas soluciones. Probarlos y comprobar si uno es más rápido que el otro.

Si realmente necesita algo más rápido, probablemente debería mirar en una dirección diferente: en lugar de cambiar el software, trate de usar diferentes discos: una imagen de origen y otro para el directorio de destino. O bien, tratar de evitar copiar estos archivos y simplemente mantenerlos en la imagen ISO.


FYI: el uso mount -o loopy rsync -a /mnt/iso /root/isose copia a ~ 100 MB / s desde un disco duro SATA interno para un SSD SATA interna.
rwenz3l

2

uniso es un script de Python que aprovecha isoinfo para extraer el contenido de una secuencia ISO. Requiere pitórico . Es un poco hacky, pero hace el trabajo.

Soy el autor de Uniso y Pythoric.


1

Si desea extraer solo algunos archivos en lugar de todo el contenido, intente mctambién conocido como MidnightCommander en el shell. También es bueno tener en cuenta .zip/tar.gz/bz2.


1

¿Por qué no usar:

isoinfo -R -X

para extraer todos los archivos o

isoinfo -R -X -find find-options

extraer archivos controlados por las opciones de búsqueda?


2
Tenga en cuenta que asume el isoinfode schily's cdrtools. Eso no funcionará con el que se encuentra en Debian (de cdrkituna bifurcación de Debian de cdrtools(por razones de licencia AFAICT)).
Stéphane Chazelas

2
Correcto, Debian creó una bifurcación en mayo de 2004 y nunca hizo ningún progreso útil desde entonces. Todas las mejoras en el código original desde que se ignoraron y esto fue mucho: más del 60% del código actual en el proyecto cdrtools es de 2004. En otras palabras, falta más del 50% de las características de un cdrtools original reciente. en la bifurcación de Debian.
schily

1
Por cierto: la bifurcación de Debian se creó en mayo de 2004, el nombre cdrkit se usó después de que le pedí a Debian en septiembre de 2006 que ya no usara el nombre original para una bifurcación con más de 100 errores específicos de Debian. Dado que todas las distribuciones que le pidieron a un abogado especializado envían las herramientas originales, no puedo ver una prueba de un problema de licencia.
schily

Si tengo que confesar, no puedo decir que entiendo el problema de la licencia.
Stéphane Chazelas

1
Como sigo cuidadosamente todos los requisitos de las licencias (verifiqué esto con varios abogados), no puedo ver un problema de licencia. Dado el hecho de que Debian reclamó un problema de licencia mucho antes de que las licencias hayan sido cambiadas, sospecho que hay un "arenque rojo" aquí. Para continuar con mi cronograma desde arriba: Debian reclamó un problema de licencia de un cambio no existente en otoño de 2005, pero el cambio de licencia ocurrió el 15 de mayo de 2006 para defenderse de los ataques de Eduard Bloch y Jörg Jaspert.
schily

1

Para aquellos que usan el administrador de archivos Thunar en Linux y desean una solución fácil y rápida:

  1. Abra thunar -> Editar -> Configurar acciones personalizadas ...
  2. Crear nuevo elemento:
    • Nombre: Extraiga ISO aquí
    • Descripción: Extrae el archivo ISO
    • Mando: xfce4-terminal -e "7z x %f"
  3. Abrir pestaña Apariencia Condiciones
    • Prefijo: *.iso
    • Seleccione solo la Other files casilla de verificación
  4. Guárdelo y estará listo para extraer utilizando el botón derecho.

Tenga en cuenta que este truco usa y depende de los paquetes xfce4-terminal y p7zip . Si está utilizando un administrador de archivo o terminal diferente, reemplace los comandos en consecuencia.


1

Las imágenes AppImage tipo 1 son imágenes ISO con archivos comprimidos zisofs . Es por eso que no todas las aplicaciones que pueden extraer archivos ISO también pueden extraer imágenes AppImage tipo-1.


Ok, pero la pregunta era ¿CÓMO EXTRACTARLOS? + RAPIDO
LinuxSecurityFreak

Creo que la forma más rápida es usar el núcleo para montar en bucle y luego copiar los archivos. Sin embargo, no he hecho mediciones científicas.
probono

0

Tratar genisoimage. Tiene todo lo que necesita para manejar ISO. Después de instalarlo, también podrá usarlo mcpara ver el contenido ISO.


Solo lea la página del manual para esto. No se encontraron opciones para extraer el contenido de una ISO existente.
Alex Jansen

0

He comparado las utilidades sugeridas para el más rápido:

FILE=some_file.iso
DIR="./unpacked"

# time 7z x $FILE -o$DIR # see note below
# real    0m0,656s

time xorriso -osirrox on -indev $FILE -extract / $DIR
# real    0m5,528s

mkdir $DIR
time bsdtar xp -C $DIR -f $FILE
# real    0m5,376s

# mkdir $DIR; cd $DIR
# time isoinfo -R -X -i ../$FILE # see note below
# real    0m0,446s

Fueron probados contra el archivo 780M en nvme ssd. Por lo tanto, me quedaría con 7z, debido a la sinopsis de la conveniencia y la velocidad rápida.

Editar: Tenía prisa por las 7z. 7z e isoinfo extrae archivos, pero están dañados. Por eso trabajaron tan rápido, creo. Estaba extrayendo un archivo AppImage. Entonces bsdtar parece el mejor.


Los he comentado, pero los dejé en su lugar para que otros puedan usar fácilmente sus argumentos. También quizás sea una buena idea probar con otra imagen iso (es decir, no una AppImage).
Ashark
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.