"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Tutorial de software > Ficando sem espaço em disco? Recupere-o de sua VM Linux VirtualBox

Ficando sem espaço em disco? Recupere-o de sua VM Linux VirtualBox

Publicado em 2024-08-29
Navegar:262

O VirtualBox permite que você execute o Linux em uma máquina virtual, e muitas vezes você verá que seus discos virtuais aumentam continuamente de tamanho, mesmo que você esteja limpando os arquivos deles. Mostrarei como reduzir esses volumes ao tamanho normal, compactando-os e economizando espaço em disco.

Por que seu convidado do VirtualBox Linux não está diminuindo automaticamente

Se você usou o VirtualBox com convidados do Windows (na terminologia de máquina virtual, o "convidado" é o sistema operacional em execução na máquina virtual) , você provavelmente está acostumado com o encolhimento dos volumes de disco do VirtualBox à medida que você exclui arquivos deles, de modo que eles ocupam apenas o espaço necessário em seu disco físico para conter os arquivos neles.

Este é o propósito pretendido do recurso de alocação dinâmica do VirtualBox, mas não funciona com convidados Linux. Ao usar convidados do Linux, muitos usuários descobrem que os discos crescem até o tamanho máximo e nunca mais diminuem à medida que os arquivos são excluídos deles.

Isso se deve à forma como o Linux gerencia seus sistemas de arquivos e como ele interage com seu host VirtualBox. O Linux não "zera" (sobrescreve dados vazios) os arquivos quando eles são excluídos por motivos de desempenho, portanto, o VirtualBox não tem como saber quais dados em um disco virtual são dados ativos e quais são excluídos.

Você pode resolver esse problema zerando os dados sozinho e dizendo ao VirtualBox para compactar o volume, trazendo-o de volta ao tamanho real. Veja como isso é feito.

Como recuperar espaço em disco de uma máquina virtual Linux no VirtualBox

A primeira coisa que você precisa fazer para recuperar espaço em disco dos discos virtuais de seus convidados Linux é garantir que a alocação dinâmica esteja habilitada. Caso contrário, você precisará converter seu disco em um disco alocado dinamicamente.

Running Out of Disk Space? Reclaim It From Your Linux VirtualBox VM

Em seguida, faça backup do seu disco virtual. Se algo der errado (como um comando digitado incorretamente ou faltar energia no meio do processo), você corre o risco de perder todos os dados do seu convidado Linux.

Em seguida, em seu convidado Linux, execute o seguinte comando no terminal:

sudo dd if=/dev/zero of=/var/deleteme

Este comando gravará dados zerados (vazios) no arquivo /var/deleteme até que o disco esteja completamente cheio. Isso substitui todos os seus arquivos excluídos anteriormente, resolvendo o problema de o Linux não sobrescrever os dados excluídos automaticamente.

Tenha cuidado ao usar o comando dd, pois ele substituirá os dados sem aviso! Verifique seus comandos e caminhos cuidadosamente antes de executá-los.

Este processo pode levar algum tempo dependendo do tamanho do volume, então seja paciente e não o interrompa. Assim que terminar, o processo será encerrado (possivelmente com um erro informando que está sem espaço). Depois que isso acontecer, você pode excluir o arquivo zerado e desligar seu convidado Linux:

sudo rm -rf /var/deleteme 

sudo shutdown now -h

Agora o espaço não utilizado em seu disco virtual é zerado e o VirtualBox será capaz de recuperar o espaço em seu host, reduzindo-o. A etapa final é usar o comando vboxmanage para compactar a imagem do disco virtual. Faça isso executando:

vboxmanage modifymedium disk /path/to/image.vdi -compact 

Você deve alterar /path/to/image.vdi para o caminho do disco virtual que você deseja compactar. Se você estiver no Windows, precisará usar VBoxManage.exe assim:

VBoxManage.exe modifymedium disk /path/to/image.vdi -compact

Se VBoxManage.exe não estiver disponível na linha de comando do seu sistema Windows, continue lendo para obter instruções sobre como ativá-lo.

O que o comando dd Linux fez?

Este método para compactar um convidado do VirtualBox Linux utiliza o comando dd para gravar um arquivo vazio no disco para que o espaço vazio possa ser identificado pelo VirtualBox.

O comando dd (duplicador de dados) converte e copia arquivos e também pode ser usado para gravar dados. A opção "if" passada para ele fornece o arquivo de entrada (neste caso /dev/zero fornece um fluxo constante de dados de valor zero ou dados nulos). A opção "of" especifica o arquivo de saída e esse fluxo de dados zero é gravado nele. Isso continuará até que o disco esteja cheio, pois /dev/zero nunca para de fornecer dados nulos.

Usando VboxManage.exe no Windows

Por padrão, VBoxManage.exe não está disponível na linha de comando do Windows. Você pode adicioná-lo atualizando o caminho do sistema Windows para incluir o diretório de instalação do VirtualBox ou chamando o caminho completo para o executável ao usá-lo:

& "C:/Path/To/VBoxManage.exe" modifymedium disk /path/to/image.vdi -compact

O símbolo "&", chamado de operador de chamada, que executa o comando citado. Isso permite usar espaços no caminho do executável.

Mais sobre como gerenciar convidados do VirtualBox

À medida que seus convidados crescem, você pode aumentar o tamanho de seus discos virtuais, bem como reduzi-los. O snapshot permite capturar o estado da sua máquina virtual em um determinado momento e salvá-lo; se mais tarde você quiser voltar a como as coisas estavam naquele exato momento (por exemplo, depois de testar uma alteração na configuração), você pode simplesmente reverter e tudo ficará como estava.

VirtualBox é uma ferramenta de virtualização poderosa que é usada tanto profissionalmente por desenvolvedores para construir e testar software, quanto por usuários domésticos para executar softwares e jogos mais antigos em computadores modernos ou executar outros sistemas operacionais sem ter que comprar uma segunda máquina . Você pode executar Windows, Linux, ChromeOS, Android e outros sistemas operacionais em hosts MacOS, Windows e Linux.

Suas alterações foram salvas

O e-mail foi enviado

O e-mail já foi enviado

Verifique seu endereço de e-mail.

Enviar e-mail de confirmação

Você atingiu o máximo de tópicos seguidos em sua conta.

Declaração de lançamento Este artigo foi reproduzido em: https://www.howtogeek.com/how-to-reclaim-disk-space-from-a-linux-virtual-machine-in-virtualbox/ Se houver alguma violação, entre em contato com study_golang@ 163.com para excluí-lo
Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3