Move / usr para outro disco

2

Eu tenho uma instalação do Ubuntu 12.04 em uma máquina com dois discos rígidos, /dev/sda e /dev/sdb . /dev/sdb2 está montado em / . Eu gostaria de mover /usr para o segundo disco rígido, pois é muito rápido (mas pequeno). Como posso (com segurança!) Fazer isso?

Obrigado, Noah

    
por Noah 21.07.2012 / 17:51

1 resposta

2

Etapa 1: faça um backup.

Passo 2: Siga esta resposta em askubuntu .

Seria mais seguro usar um Live CD, mas você poderia:

  • copie todos os arquivos para uma nova partição, certificando-se de que o conteúdo de /usr não seja alterado enquanto você estiver fazendo isso.
  • edite /etc/fstab para que /usr seja montado na próxima reinicialização
  • reinicializar
  • exclua os arquivos antigos

Veja abaixo os detalhes de cada etapa.

Observe que você não pode montar a nova partição em /usr durante a execução, pois haverá muitos arquivos em /usr que serão abertos.

Copiando os arquivos

Eu usaria cp -a . -a é a opção de arquivamento. A partir da página de manual :

-a, --archive
          same as -dR --preserve=all
...
-d     same as --no-dereference --preserve=links
...
-P, --no-dereference
          never follow symbolic links in SOURCE
...
--preserve[=ATTR_LIST]
          preserve      the      specified      attributes       (default:
          mode,ownership,timestamps),  if  possible additional attributes:
          context, links, xattr, all
...
-R, -r, --recursive
          copy directories recursively

Editando / etc / fstab

Você precisa conhecer o UUID da sua nova partição. Você pode ver o mapeamento fazendo:

$ ls -l /dev/disk/by-uuid/

Em seguida, adicione esta linha a /etc/fstab :

UUID=634c31a5-e27c-4e33-ac67-2e22491a30c2 /usr           ext4    defaults        0       2

Altere o UUID para seu UUID e altere ext4 para o tipo de sistema de arquivos que você está usando - você deve saber isso se tiver configurado a partição.

Excluir os arquivos antigos

Após a reinicialização, os arquivos antigos em /usr na partição raiz serão ocultados pela nova partição montada em /usr . Mas podemos usar alguns montar o truque de vinculação para acessar os arquivos antigos e excluí-los.

$ sudo mount --bind / /mnt
$ sudo rm -rf /mnt/usr
$ sudo umount /mnt

Mas alguns erros de digitação (digamos, apertar Enter quando você só digitou sudo rm -rf /mnt ) podem causar um desastre, então eu só usaria esse método se você estivesse muito confiante no que estava fazendo, realmente não poderia lidar com qualquer tempo de inatividade, ou não teve acesso físico à máquina e, portanto, não conseguiu inicializar um CD ao vivo ou pendrive ao vivo.

    
por 21.07.2012 / 18:18

Tags