Como substituo um arquivo em um arquivo ISO sem precisar de raiz na linha de comando


13

Eu tenho um arquivo ISO e quero alterar o conteúdo de um dos arquivos na linha de comando. Eu sei que posso usar

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

mas preciso de uma solução que não exija permissões de root.


2
Isto irá dizer como e mais: unix.stackexchange.com/questions/96625/... Tecnicamente não é uma pergunta sobre Ubuntu, mas sobre Linux por isso a nossa irmã site terá mais acessos nesta;)
Rinzwind

Obrigado, mas eu esperava encontrar uma maneira de desempacotar de uma maneira que evite a montagem todos juntos. Afinal, ISO é apenas um arquivo que contém outros arquivos.
martinhans

Obrigado pelo ponteiro para unix.stackexchange.com, mas acho que é tarde demais para movê-lo agora. meta.stackexchange.com/questions/64068/…
martinhans

Um ISO é um sistema de arquivos. É mais semelhante a um disco rígido do que a um arquivo (daí a necessidade de montá-lo;)) A movimentação não é necessária; ele vai ser respondida e / ou fechada no tempo;)
Rinzwind

1
Você pode extrair o conteúdo de uma ISO diretamente usando 7zip.
Andrew Medico

Respostas:


22

Finalmente consegui encontrar uma resposta. Eu posso usar o fusível para montar o arquivo ISO, há até uma ferramenta para isso nos repositórios do Ubuntu:

sudo apt-get install fuseiso

Então eu posso fazer:

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ão se esqueça de votar e aceitar. Aqui está um +1 de mim :)
Rinzwind

Parece justo que outros recebam dois dias para tentar encontrar uma solução ainda melhor. Por exemplo, pode ser que alguém tenha uma solução que nem exija fusível.
kasperd
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.