Comment remplacer un fichier dans un fichier ISO sans avoir besoin de root depuis la ligne de commande


13

J'ai un fichier ISO et je souhaite modifier le contenu de l'un des fichiers qu'il contient à partir de la ligne de commande. Je sais que je peux utiliser

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

mais j'ai besoin d'une solution qui ne nécessite pas de droits root.


2
Cela vous dira comment et plus: unix.stackexchange.com/questions/96625/… Techniquement pas une question sur Ubuntu mais sur Linux donc notre site soeur aura plus de hits à ce sujet;)
Rinzwind

Merci, mais j'espérais trouver un moyen de faire le déballage d'une manière qui évite le montage tous ensemble. L'ISO est juste un fichier contenant d'autres fichiers, après tout.
martinhans

Merci pour le pointeur vers unix.stackexchange.com, mais je suppose qu'il est trop tard pour le déplacer maintenant. meta.stackexchange.com/questions/64068/…
martinhans

Un ISO est un système de fichiers. Il ressemble plus à un disque dur qu'à un fichier (d'où la nécessité de le monter;)) Le déplacement n'est pas nécessaire; il sera répondu et / ou fermé à temps;)
Rinzwind

1
Vous pouvez extraire le contenu d'un ISO directement à l'aide de 7zip.
Andrew Medico

Réponses:


22

J'ai finalement réussi à trouver une réponse moi-même. Je peux utiliser fuse pour monter le fichier ISO, il y a même un outil pour cela dans les référentiels Ubuntu:

sudo apt-get install fuseiso

Ensuite, je peux faire:

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/

N'oubliez pas de voter et d'accepter. Voici un +1 de ma part :)
Rinzwind

Il semble juste que d'autres aient deux jours pour essayer de trouver une solution encore meilleure. Par exemple, il se pourrait que quelqu'un puisse trouver une solution qui ne nécessite même pas de fusible.
kasperd
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.