Wie ersetze ich eine Datei in einer ISO-Datei, ohne root von der Kommandozeile aus zu benötigen?

13

Ich habe eine ISO-Datei und möchte den Inhalt einer der darin enthaltenen Dateien über die Befehlszeile ändern. Ich weiß, dass ich verwenden kann

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

Ich benötige jedoch eine Lösung, für die keine Root-Berechtigungen erforderlich sind.

Martinhans
quelle
2
Dies wird zeigen, wie und mehr: unix.stackexchange.com/questions/96625/… Technisch gesehen keine Frage zu Ubuntu, sondern zu Linux. Unsere Schwestersite wird also mehr Treffer haben;)
Rinzwind
Vielen Dank, aber ich hatte gehofft, einen Weg zu finden, um das Auspacken so zu gestalten, dass die Montage insgesamt vermieden wird. ISO ist schließlich nur eine Datei, die andere Dateien enthält.
Martinhans
Vielen Dank für den Verweis auf unix.stackexchange.com, aber ich denke, es ist zu spät, ihn jetzt zu verschieben. meta.stackexchange.com/questions/64068/…
martinhans
Eine ISO ist ein Dateisystem. Es ähnelt eher einer Festplatte als einer Datei (daher muss es eingehängt werden;)) Verschieben ist nicht erforderlich; es wird rechtzeitig beantwortet und / oder geschlossen;)
Rinzwind
1
Sie können den Inhalt einer ISO direkt mit 7zip extrahieren.
Andrew Medico

Antworten:

22

Ich habe es endlich geschafft, selbst eine Antwort zu finden. Ich kann fuse verwenden, um die ISO-Datei zu mounten, es gibt sogar ein Tool dafür in den Ubuntu-Repositories:

sudo apt-get install fuseiso

Dann kann ich machen:

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
quelle
Vergiss nicht zu stimmen und zu akzeptieren. Hier ist eine +1 von mir :)
Rinzwind
Scheint fair, dass andere zwei Tage Zeit haben, um zu versuchen, eine noch bessere Lösung zu finden. Zum Beispiel könnte jemand eine Lösung finden, die nicht einmal eine Sicherung erfordert.
Kasperd