Tutorial: Como extrair arquivos de um ISO no Linux (Ubuntu)
Overview
Ah, os CDs e DVDs, relíquias de uma era quase esquecida, mas cujo espírito sobrevive nos arquivos .ISO na internet. Neste post, vamos mergulhar no mundo da emulação dessas mídias através de comandos simples. Vamos ensinar a montar, acessar e extrair estes arquivos como se estivessem em suas garras, tudo sem sair do conforto do seu terminal. Prepare-se para reviver o passado e ao mesmo tempo dominar essa habilidade essencial para manusear arquivos .ISO.
Lembra do CD e do DVD? Pois é, estes trambolhos morreram… ou estão quase morrendo. Todavia, você ainda encontra o espirito deles na internet, que são os arquivos .ISO. Eles são representações do que seria o CD ou o DVD (inclusive, você utiliza estes arquivos para gravar uma destas mídias). Neste post vou mostrar como acessar e extrair os arquivos em uma mídia destas, utilizando linha de comando.
Para facilitar a vida neste exemplo, vamos considerar:
- Seu arquivo .ISO está no caminho /public/top_secret/area42.iso
- O arquivo .ISO será montado no caminho /media/area42
- Você quer extrair os arquivos para a pasta /storage/iso_files
Primeiro passo é criar a pasta (mkdir) que vai receber nossos arquivos:
sudo mkdir /storage/iso_files
Agora vamos disponibilizar os arquivos, utilizando o comando mount:
sudo mount -o loop /public/top_secret/area42.iso /media/area42
Por curiosidade, o argumento loop do comando mount indica que será criado um loop device (cuidado, não é um loopback device). De forma superficial, este argumento indica que um filesystem do tipo mídia removível. Desta forma, você consegue acessar os arquivos de maneira conveniente. Existem algumas utilizações mais elaboradas para os loop devices, mas este não é o foco do post.
Se quiser, pode listar (ls) os arquivos que acabaram de ser montados:
ls -la /media/area42
Você pode omitir a flag -la, coloquei ela apenas para demonstrar.
Ok, hora de copiar os arquivos da pasta temporária (/media/area42) para a nova casa deles (/storage/iso_files):
cp -a /media/area42/. /storage/iso_files/
Caso não saiba, a flag -a deste comando indica que os arquivos serão copiados recursivamente e deverão reter suas propriedades originais. Com ela, links simbólicos continuam funcionando.
O . no final do caminho de origem (/media/area42/.) faz parte da sintaxe do comando CP e indica que todos os arquivos e pastas devem ser copiados para o destino (/storage/iso_files/)
Caso não queira copiar todos os arquivos, sinta-se livre para alterar este comando…
Por último, “desmonte” o arquivo ISO, utilizando o comando unmount:
sudo unmount /media/area42
Neste ponto, vale uma nota: Se os arquivos do ISO estiverem montados, dependendo da sua necessidade, não precisa criar uma copia. Você pode utiliza-los desta forma. Enfase em: dependendo da sua necessidade.
Espero ter ajudado.