Antes de começarmos, vamos entender o que é um disco virtual. Um disco virtual é simplesmente um arquivo que atua como uma unidade de disco física. Pense nisso como a criação de um arquivo de contêiner que o sistema operacional pode tratar como se fosse um disco rígido real. Isso é semelhante a como as máquinas virtuais usam arquivos de disco virtual para armazenar seus dados.
Antes de prosseguirmos com a parte prática, vamos entender alguns conceitos importantes:
-
Primeiro, vamos criar um disco virtual de 256MB usando o comando dd:
dd if=/dev/zero of=virtual.img bs=1M count=256
Vamos detalhar este comando:
dd é um utilitário para copiar e converter arquivos.
if=/dev/zero significa "input file is /dev/zero" (um arquivo especial que fornece zeros infinitos).
of=virtual.img significa "output file is virtual.img" (nosso novo arquivo de disco virtual).
bs=1M define o tamanho do bloco para 1 megabyte (quanta informação copiar de uma vez).
count=256 significa copiar 256 blocos (resultando em um arquivo de 256MB).
Isso cria um arquivo vazio preenchido com zeros que usaremos como nosso disco virtual.
-
Verifique o tamanho do arquivo:
ls -lh virtual.img
Você deve ver que virtual.img tem exatamente 256MB.
-
Agora, vamos formatar este disco virtual com um sistema de arquivos ext4:
sudo mkfs.ext4 virtual.img
O que está acontecendo aqui? Este comando:
- Cria um novo sistema de arquivos ext4 dentro do nosso arquivo de disco virtual.
- Configura a estrutura básica necessária para armazenar arquivos e diretórios.
- É semelhante a formatar um novo pendrive antes do primeiro uso.
O sistema de arquivos ext4 é o padrão para muitas distribuições Linux por ser confiável e bem testado.
-
Em seguida, precisamos criar um ponto de montagem. Este é o diretório onde o conteúdo do nosso disco virtual aparecerá:
sudo mkdir /mnt/virtualdisk
Pense em um ponto de montagem como uma "janela" para o seu disco virtual. Após a montagem, quando você olhar dentro deste diretório, estará vendo o conteúdo do disco virtual.
-
Agora podemos montar o disco virtual:
sudo mount -o loop virtual.img /mnt/virtualdisk
Vamos detalhar o que está acontecendo:
- A opção
-o loop diz ao Linux para tratar nosso arquivo como se fosse um dispositivo de disco real.
virtual.img é a nossa fonte (o disco virtual que criamos).
/mnt/virtualdisk é onde queremos que o conteúdo apareça.
Isso é semelhante ao que acontece automaticamente quando você conecta um pendrive, exceto que estamos fazendo isso manualmente com nosso arquivo de disco virtual.
-
Vamos verificar se o disco está montado:
mount | grep virtualdisk
Você deve ver uma linha indicando que virtual.img está montado em /mnt/virtualdisk.
-
Agora que está montado, podemos usá-lo como qualquer outro diretório. Vamos criar um arquivo:
sudo touch /mnt/virtualdisk/testfile
ls /mnt/virtualdisk
Você deve ver o testfile listado.
-
Quando terminar de usar o disco virtual, você deve desmontá-lo:
sudo umount /mnt/virtualdisk
A desmontagem remove o sistema de arquivos daquele diretório, garantindo que o sistema operacional finalize todas as operações de leitura e escrita pendentes antes de desconectá-lo. Falhar ao desmontar corretamente pode levar à corrupção de dados. Embora a sintaxe do comando foque em desmontar o diretório, nos bastidores, o sistema operacional sabe que este diretório corresponde à imagem de disco montada.
Este processo de criação, formatação e montagem de um disco virtual é muito semelhante ao que acontece quando você instala um novo disco rígido ou pendrive. A principal diferença é que estamos fazendo tudo com um arquivo em vez de um dispositivo físico.
Montar um sistema de arquivos significa anexá-lo a um diretório especificado para que o sistema operacional possa acessar os dados dentro dele. Neste laboratório, o arquivo de imagem de disco virtual é tratado como se fosse um disco físico, e a montagem torna seu conteúdo disponível em um diretório específico (ex: /mnt/virtualdisk).