Tutorial: Como extrair arquivos de um ISO no Linux (Ubuntu)

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:

  1. Seu arquivo .ISO está no caminho /public/top_secret/area42.iso
  2. O arquivo .ISO será montado no caminho /media/area42
  3. 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.

The following two tabs change content below.
Arquiteto de Software e Desenvolvedor Backend (quase Fullstack), geralmente trabalho com C#, PowerShell, Python, Golang, bash e Unity (esse é mais por hobby). Estou sempre buscando algo novo para aprender, adicionando novas ferramentas ao meu cinto de utilidades.
Posted in Conhecimento Técnico, Dev, Linux/Bash and tagged , , , , , , , , , , .