Tengo un archivo ISO grande en un servidor y necesito acceder al archivo sin tener acceso de root. Por lo tanto, no puedo simplemente montarlo. ¿Qué debo hacer para poder extraer un ISO en LInux sin acceso de root?
Tengo un archivo ISO grande en un servidor y necesito acceder al archivo sin tener acceso de root. Por lo tanto, no puedo simplemente montarlo. ¿Qué debo hacer para poder extraer un ISO en LInux sin acceso de root?
Respuestas:
Si 7zip está instalado, este es realmente fácil:
7z x Your.iso -oWhere/You/Want/It/Extracted/To
para extraer todo el iso.
7z
parece lo suficientemente inteligente como para extraer directamente de los medios de comunicación: 7z x /dev/cdrom
. Tengo un problema muy estúpido, que mis archivos muestran 0 bytes cuando están montados. Entonces extraer era una solución alternativa.
Muchas de las herramientas GUI, como File Roller, utilizarán isoinfo en segundo plano.
Puede extraer un solo archivo de un ISO de esta manera:
isoinfo -i image.iso -x /isolinux/initrd.img> initrd.img
La redirección se requiere como -x
extractos a stdout.
Si desea enumerar el contenido de una carpeta en la ISO:
isoinfo -i image.iso -l
salida de ejemplo:
Listado de directorio de / d --------- 0 0 0 2048 0 1900 [26 02]. d --------- 0 0 0 2048 0 1900 [26 02] .. d --------- 0 0 0 2048 6 de febrero de 2010 [27 02] i386 ...
Encontré una nueva mejor manera: xorriso
¡ usar !
No es necesario tener acceso de root. Lo he intentado 7z
y file-roller
, ambos no funcionan aquí.
xorriso
es un programa de código abierto, por lo que puede descargar los códigos fuente si no lo tiene instalado de manera predeterminada.
Si no lo ha instalado, descargue los códigos fuente aquí: https://www.gnu.org/software/xorriso/
Los pasos son:
tar zxvf xorriso-1.4.6.tar.gz
cd xorriso-1.4.6
./configure
make
cd xorriso
pwd
Agregue el directorio de salida a la variable de entorno PATH
.
Luego, puede usarlo para extraer un archivo iso:
xorriso -osirrox on -indev image.iso -extract / extracted_path
Solo necesita modificar image.iso
y extracted_path
hacer que funcione en su sistema.
Referido: https://blog.sleeplessbeastie.eu/2014/08/26/how-to-extract-an-iso-image/
Si tiene acceso a la GUI, haga clic derecho en la iso y elija "Abrir con el Administrador de archivos ..." o simplemente ejecute:
file-roller -e /path/to/extract/to /path/to/iso
Si puede montar sistemas de archivos FUSE, FuseISO es una opción para montar la imagen.
La mayoría de las soluciones anteriores hacen que extraiga el contenido iso, pero si el contenido es grande, ocupará mucho espacio.
Una mejor solución sería hacer el montaje real de la imagen iso, y gracias a FuseISO eso es posible sin acceso a la raíz (pero aún tendría que pedirle al administrador que instale FuseISO si aún no está instalado, en ubuntu sudo apt-get install fuseiso
)
Una vez que tenga instalado FuseISO en la máquina, puede:
# For user to mount an iso file:
mkdir ~/iso
fuseiso ~/my_iso.iso ~/iso
# For user to unmount an iso file:
fusermount -u ~/iso
7za
(CentOS);7za
no es compatible con archivos ISO. Puede verificar los formatos compatibles con7za i
.