¿Cómo reemplazo un archivo en un archivo ISO sin necesidad de root desde la línea de comando?

13

Tengo un archivo ISO y quiero cambiar el contenido de uno de los archivos desde la línea de comandos. Sé que puedo usar

sudo mount -o loop <etc...>
rsync -ra a b
edit b/file
mkisofs <options>

pero necesito una solución que no requiera permisos de root.

martinhans
fuente
2
Esto dirá cómo y más: unix.stackexchange.com/questions/96625/… Técnicamente no es una pregunta sobre Ubuntu, sino sobre Linux, por lo que nuestro sitio hermano tendrá más visitas sobre esto;)
Rinzwind
Gracias, pero esperaba encontrar una manera de desempacar de una manera que evite el montaje por completo. ISO es solo un archivo que contiene otros archivos, después de todo.
Martinhans
Gracias por el puntero a unix.stackexchange.com, pero supongo que ya es demasiado tarde para moverlo. meta.stackexchange.com/questions/64068/…
martinhans
Un ISO es un sistema de archivos. Es más similar a un disco duro que a un archivo (de ahí la necesidad de montarlo;)) No es necesario moverlo; será respondido y / o cerrado a tiempo;)
Rinzwind
1
Puede extraer el contenido de un ISO directamente usando 7zip.
Andrew Medico

Respuestas:

22

Finalmente logré encontrar una respuesta yo mismo. Puedo usar fusible para montar el archivo ISO, incluso hay una herramienta para esto en los repositorios de Ubuntu:

sudo apt-get install fuseiso

Entonces puedo hacer:

fuseiso -p file.iso mounted_iso/
rsync -ra mounted_iso/ copy/
fusermount -u mounted_iso

chmod -R +w copy/
edit copy/file

mkisofs <many options> -o remastered.iso copy/
martinhans
fuente
No te olvides de votar y aceptar. Aquí hay un +1 de mi parte :)
Rinzwind
Parece justo que otros tengan dos días para tratar de encontrar una solución aún mejor. Por ejemplo, podría ser que alguien pueda encontrar una solución que ni siquiera requiera fusible.
Kasperd