Respostas:
Primeiro prepare uma nova partição (por exemplo, com parted
e mkfs
).
Digamos que a partição seja / dev / sda5
Monte a nova partição:
mkdir /var2
mount /dev/sda5 /var2
Sincronize seu var atual:
rsync -a /var/ /var2
Adicione a entrada ao / etc / fstab
/dev/sda5 /var ext4 defaults 2 2
Reinicie.
Se você precisar retornar seu antigo / var, apenas comente a entrada no fstab.
/
em outro local no sistema atual enquanto estiver em execução (mas após a reinicialização). Então você pode começar na idade /var
e excluí-lo se você gosta
blkid -o list -s UUID
, mas eu acho que você precisa para ser executado com sudo
Quando assumi um novo servidor virtual que havia sido provisionado pela empresa de hospedagem do meu empregador, não havia espaço livre suficiente no sistema de arquivos raiz. Felizmente, eles usaram o Logical Volume Manager (LVM) para subdividir o disco virtual e havia espaço livre suficiente disponível para criar novos volumes. Criei volumes lógicos extras para var
e home
que eram diretórios regulares no sistema de arquivos raiz. Como o provedor do servidor virtual não forneceu uma interface semelhante ao KVM pela qual eu poderia acessar o servidor no modo de usuário único, usei um método muito semelhante ao descrito por Aleksander (esta resposta inclui detalhes adicionais para recuperar espaço em disco no além dos comandos específicos do LVM).
Crie um volume lógico para o novo var
sistema de arquivos, monte-o (usando um diretório temporário) e copie os arquivos do atual /var
para o novo sistema de arquivos:
# Create a new 60GB logical volume in the `VolGroup00` group called `var`.
sudo lvcreate -L 60GB -n var VolGroup00
# Create an ext4 filesystem on this new `var` volume.
sudo mkfs.ext4 /dev/VolGroup00/var
# Mount this filesystem at a temporary mount-point.
sudo mkdir /var.new
sudo mount /dev/VolGroup00/var /var.new
Como os processos em execução terão arquivos /var
mantidos abertos e em uso, a árvore de diretórios não pode simplesmente ser movida para o novo sistema de arquivos. -r
Copie recursivamente ( ) arquivos da /var
partição atual para o novo sistema de arquivos, preservando atributos de arquivo e atributos estendidos ( -a, --archive
opção). Um usuário cauteloso pode primeiro criar um instantâneo LVM do volume atual antes de copiar, mas isso é um excesso de detalhes fora do tópico para esta pergunta.
sudo cp -ra /var/ /var.new/
Como alternativa, os arquivos podem ser copiados rsync
, com a -a, --archive
opção de preservar carimbos de data e hora, propriedade, modos etc. e sua -X, --xattrs
opção de preservar os atributos estendidos, como os rótulos de segurança usados pelo AppArmor e SELinux:
sudo rsync -raX /var/ /var.new/
Configure o novo sistema de arquivos a ser usado como um novo ponto de montagem /var
, adicionando a seguinte linha a /etc/fstab
. Observe que 0
é usado como o número da senha (último campo) para que o sistema de arquivos não seja verificado automaticamente ( fsck
) após um certo número de reinicializações.
/dev/mapper/VolGroup00-var /var ext4 defaults 0 0
Como não é possível mudar para o modo de usuário único, reinicie o computador para usar este novo volume como /var
.
Após a reinicialização da máquina, o novo sistema de arquivos será montado /var
para que o ponto de montagem temporário possa ser removido com segurança:
sudo rmdir /var.new
Os /var
arquivos antigos ainda ocupam espaço na partição raiz, mas não são facilmente acessíveis enquanto outro sistema de arquivos é montado /var
(eles são "mascarados" pelo novo sistema de arquivos usando o /var
diretório como ponto de montagem). Use um ponto de montagem temporário para montar o sistema de arquivos raiz para que o conteúdo do /var
diretório original esteja disponível por um caminho alternativo.
sudo mkdir /old-root
sudo mount /dev/mapper/VolGroup00-root /old-root/
sudo rm -rf /old-root/var/*
sudo umount /old-root/
sudo rmdir /old-root/
lvcreate
e mkfs.ext4
sem explicar o que são ou por que são usados. Talvez você possa simplesmente dizer que é para fazer a nova partição, pois ela não é o tópico principal da resposta.
/var
: inicie em um livecd, monte a partição no sistema instalado/
erm -rf /var/*
.