Por padrão, o VirtualBox cria discos dinâmicos que crescem com o tempo conforme você adiciona dados. No entanto, se você excluir dados do virtual machine mais tarde, você notará que o disco não encolhe automaticamente. Mas você pode reduzir manualmente um disco dinâmico usando um comando oculto.
RELACIONADOS: Novato Geek: como criar e usar máquinas virtuais
Lembre-se de que isso apenas encolherá o disco se ele aumentar de tamanho e você já tiver removido os dados. Portanto, se você acabou de criar um disco dinâmico, isso não o reduzirá. Mas, se você criou um disco dinâmico, baixou 10 GB de dados para ele e depois excluiu esses 10 GB de dados, deve conseguir reduzir o disco em cerca de 10 GB.
Etapa um: verifique se você está usando um disco dinâmico
Esse processo funciona apenas para discos dinâmicos, que podem aumentar e diminuir de tamanho. Os discos dinâmicos podem ter até um determinado tamanho máximo - 50 GB, por exemplo - mas eles só realmente crescem até esse tamanho máximo quando contêm essa quantidade de dados. Os discos de tamanho fixo sempre terão seu tamanho máximo.
RELACIONADOS: Como converter entre discos fixos e dinâmicos no VirtualBox
Se você tem um disco de tamanho fixo que deseja encolher, pode primeiro convertê-lo em um disco dinâmico e siga as instruções abaixo. Por exemplo, se você tiver um disco fixo de 50 GB com apenas 20 GB de dados e convertê-lo em um disco dinâmico, poderá reduzi-lo para ocupar apenas 20 GB de espaço.
Para verificar se um disco é dinâmico ou de tamanho fixo no VirtualBox, clique com o botão direito na máquina virtual que usa o disco e selecione “Configurações”. Clique na guia “Armazenamento” e selecione o disco. Você verá que tipo de disco é exibido ao lado de “Detalhes”. Por exemplo, na captura de tela abaixo, “Armazenamento alocado dinamicamente” indica que este é um disco dinâmico.
Etapa dois: gravar zeros no disco da máquina virtual
Certifique-se de excluir todos os dados que você não deseja mais no disco dentro da máquina virtual para liberar espaço antes de continuar. Exclua os arquivos desnecessários, desinstale os programas que não usa mais e esvazie a Lixeira. Em seguida, você precisará substituir esse espaço vazio com zeros.
Para sistemas operacionais Windows convidados
Se você tiver o Windows instalado dentro da máquina virtual, deverá inicializar a máquina virtual e desfragmentar seus discos. Dentro da máquina virtual, procure no menu Iniciar por “Desfragmentar” e inicie a ferramenta “Desfragmentador de disco” ou “Desfragmentar e otimizar unidades”. Selecione o disco que deseja compactar e clique em “Desfragmentar disco”.
Depois que o processo de desfragmentação for concluído, você precisará escrever zeros no espaço vazio dentro da máquina virtual. Quando você exclui arquivos, os dados excluídos ainda estão armazenados no disco portanto, o VirtualBox não pode reduzir a unidade automaticamente. Mas, quando você escreve zeros sobre os arquivos excluídos, o VirtualBox verá uma grande quantidade de zeros - espaço vazio, em outras palavras - e será capaz de compactar o disco.
Para fazer isso, baixe o
Withdelete
utilitário da Microsoft. Extraia o
make.eq
arquivo para uma pasta em seu computador.
Abra uma janela do Prompt de Comando. Para fazer isso, abra o menu Iniciar, pesquise “Prompt de comando” e inicie o atalho.
Mude para o diretório que contém o
make.eq
arquivo digitando
cd
, pressionando Espaço, inserindo o caminho para o diretório e pressionando Enter. Certifique-se de colocar o caminho entre aspas se ele contiver um caractere de espaço. Deve ser assim:
cd "C: \ caminho \ para \ pasta"
Por exemplo, se você extraiu o
make.eq
arquivo para a pasta de download da sua conta de usuário e seu nome de usuário do Windows é Bob, você executaria o seguinte comando:
cd "C: \ Users \ bob \ Downloads"
Para preencher rapidamente o caminho do diretório, basta digitar
cd
na janela do Prompt de Comando, pressione Espaço e arraste e solte o ícone da pasta da barra de endereço do gerenciador de arquivos.
Execute o seguinte comando:
make.ek ts: -z
Isso gravará zeros em todo o espaço livre em disco na unidade C :. Se você deseja reduzir uma unidade secundária localizada em uma letra de unidade diferente na máquina virtual, digite a letra da unidade em vez de c :. É para isso que a ferramenta foi projetada. Como a página SDelete no site da Microsoft observa, a opção -z é "boa para otimização de disco virtual".
Você será solicitado a concordar com o contrato de licença da ferramenta antes de continuar. Basta clicar em “Concordo”.
Aguarde a conclusão do processo. Quando terminar, desligue sua máquina virtual usando a opção “Desligar” no menu Iniciar. Agora você está pronto para compactá-lo.
Para sistemas operacionais Linux convidados
Se você tiver o Linux instalado na máquina virtual - um sistema operacional convidado Linux em vez de um sistema operacional convidado Windows, em outras palavras - você pode pular o processo de desfragmentação e usar comandos integrados para zerar o espaço livre na unidade. Vamos usar o Ubuntu como exemplo aqui, mas o processo será semelhante em outras distribuições Linux.
Para fazer isso, primeiro você precisa instalar o
zerofree
utilitário dentro da máquina virtual. Ele deve estar disponível nos repositórios de software de sua distribuição Linux. Por exemplo, você pode instalá-lo no Ubuntu executando o seguinte comando no terminal dentro de sua máquina virtual:
sudo apt install zerofree
Você não pode realmente usar
zerofree
em sua partição / enquanto você inicializa no ambiente Linux padrão. Em vez disso, você deseja inicializar em um modo de recuperação especial, onde a partição raiz normal não está montada. No Ubuntu, reinicie sua máquina virtual e pressione repetidamente a tecla “Esc” durante a inicialização para acessar o menu Grub. Quando o menu Grub aparecer, selecione “* Opções avançadas para Ubuntu” e pressione Enter.
Selecione a opção “(modo de recuperação)” associada ao kernel Linux mais recente - ou seja, a opção com o número de versão mais alto próximo ao topo da lista - e pressione Enter.
Selecione “root” no menu de recuperação para inicializar em um prompt de shell de root.
Pressione “Enter” depois, quando “Pressione Enter para manutenção” aparecer na tela. Você receberá um prompt de terminal.
Na linha de comando, determine qual disco virtual você deseja zerar executando o seguinte comando:
df
Na saída abaixo, podemos ver que
/ dev / sda1
é o nosso único dispositivo de disco real aqui. Sabemos disso porque é o único disco com
/ dev /
na coluna mais à esquerda.
Supondo que sua máquina virtual foi criada com as configurações padrão, ela só terá
/ dev / sda1
, que é a primeira partição do primeiro disco rígido. Se você configurou as coisas de maneira diferente com vários discos ou partições, pode ser necessário zerar outra partição ou zerar várias partições.
Agora você está pronto para zerar o disco. Execute o seguinte comando, substituindo
/ dev / sda1
com o nome do dispositivo da partição na qual deseja gravar zeros. A maioria das pessoas terá apenas um
/ dev / sda1
dispositivo a zero.
zerofrey -v / dev / sda1
Quando o processo zero for concluído, execute o seguinte comando para desligar a máquina virtual:
Pare
Ao ver a mensagem “Sistema interrompido” na tela, o sistema foi interrompido e agora você pode desligar a máquina virtual. Feche a janela da máquina virtual e selecione “Desligar a máquina virtual”.
Etapa três: encontre o comando VBoxManage
O resto do processo será executado fora da máquina virtual, em seu sistema operacional host. Por exemplo, se você tiver o Windows 10 em execução em seu PC e o Windows 7 em uma máquina virtual, você executará o resto do processo no Windows 10.
Esta opção não é exposta na interface gráfica do VirtualBox. Em vez disso, você deve usar o
VBoxManage.exe
comando.
Localize este comando para continuar. No Windows, você o encontrará no diretório do programa VirtualBox, que é
C: \ Arquivos de programas \ Oracle \ VirtualBox
por padrão. Se você instalou o VirtualBox em outro diretório, procure lá.
Abra uma janela do Prompt de Comando. Para fazer isso, abra o menu Iniciar, digite
cmd
e pressione Enter.
Tipo
cd
no Prompt de Comando, seguido pelo caminho da pasta onde está o comando VBoxManage. Você precisará colocá-lo entre aspas.
Você pode fazer isso rapidamente digitando
cd
na janela do Prompt de Comando e, em seguida, arraste e solte o ícone da pasta da barra de endereço do gerenciador de arquivos no Prompt de Comando.
Se você estiver usando o caminho padrão, deve ser parecido com o seguinte:
cd "C: \ Arquivos de programas \ Oracle \ VirtualBox"
NOTA: Estas instruções presumem que você está usando o VirtualBox no Windows. Se você estiver usando o VirtualBox no macOS ou Linux, basta abrir uma janela do Terminal e executar o
vboxmanage
comando normalmente, como faria com qualquer outro comando.
Etapa quatro: localize o caminho para o disco que você deseja compactar
Execute o seguinte comando na janela do prompt de comando para ver uma lista de todos os discos rígidos virtuais em seu computador:
VBoxManage.exe list hdds
Examine a lista e identifique o caminho do arquivo para o disco virtual que deseja compactar. Digamos que queremos modificar o disco virtual associado à máquina virtual chamada “Windows 7”. Como podemos ver na saída abaixo, o caminho para esse disco virtual em nosso sistema é
C:\Users\chris\VirtualBox VMs\Windows 7\Windows 7.vdi
.
Etapa cinco: compactar o disco
Para compactar o disco, você precisará usar
VBoxManage.exe
com o comando correto. Apenas execute o seguinte comando, substituindo o caminho para o arquivo VDI do disco pelo caminho para o disco em seu sistema que você encontrou usando o comando acima. Certifique-se de colocar o caminho do arquivo entre aspas se ele contiver um espaço em qualquer lugar em seu caminho.
Deve ser assim:
VBoxManage.exe modificar o disco de mídia "C: \ path \ to \ disk.vdi" --compact
Por exemplo, uma vez que o caminho para o arquivo é
C:\Users\chris\VirtualBox VMs\Windows 7\Windows 7.vdi
em nosso exemplo, executaríamos o seguinte comando:
VBoxManage.exe modificar disco de mídia "C: \ Users \ chris \ VirtualBox VMs \ Windows 7 \ Windows 7.vdi" --compact
O VirtualBox compactará o disco e você poderá inicializar imediatamente a máquina virtual depois, se desejar. Quanto espaço você acaba economizando depende de quanto espaço vazio havia para recuperar.
Considere também a exclusão de instantâneos
RELACIONADOS: Como economizar tempo usando instantâneos no VirtualBox
VirtualBox permite que você crie instantâneos para cada máquina virtual. Eles contêm uma imagem completa da máquina virtual quando você criou o instantâneo, permitindo restaurá-lo para um estado anterior. Isso pode ocupar muito espaço.
Para liberar mais espaço, exclua os instantâneos que você não usa. Para visualizar os instantâneos que você salvou para uma máquina virtual, selecione-o na janela principal do VirtualBox e clique no botão “Instantâneos” à direita de Detalhes na barra de ferramentas. Se você não precisar mais de um instantâneo, clique com o botão direito na lista e selecione “Excluir instantâneo” para liberar espaço.