Mova / usr para outro disco

3

Eu tenho uma instalação do Ubuntu 12.04 em uma máquina com dois discos rígidos /dev/sdae /dev/sdb. /dev/sdb2está montado /. Gostaria de passar /usrpara o segundo disco rígido, pois é muito rápido (mas pequeno). Como posso (com segurança!) Fazer isso?

Obrigado, Noah

Noé
fonte
O que você espera de colocar / usr em outro disco? Eu prefiro colocar / home e / ou / var em 2 partições lá. Veja man 5 fstabonde e como especificar entradas que devem ser montadas na inicialização do sistema.
21412

Respostas:

3

Etapa 1: faça um backup.

Etapa 2: Siga esta resposta no askubuntu .

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

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

Veja abaixo os detalhes de cada etapa.

Observe que você não pode montar a nova partição /usrenquanto estiver executando, pois haverá muitos arquivos /usrabertos.

Copiando os arquivos

Eu usaria cp -a. -aé a opção de arquivamento. Na página do 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/

E adicione esta linha a /etc/fstab:

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

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

Exclua os arquivos antigos

Após a reinicialização, os arquivos antigos na /usrpartição raiz serão ocultados pela nova partição montada /usr. Mas podemos usar alguns truques de montagem de ligaçã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, pressionar Enter quando você digitou apenas sudo rm -rf /mnt) podem causar desastre, então eu usaria esse método apenas se estivesse muito confiante no que estava fazendo, realmente não pudesse lidar com nenhum tempo de inatividade ou não tivesse acesso físico à máquina e, portanto, não foi possível inicializar um CD ao vivo ou um stick USB ao vivo.

Lucas Kauffman
fonte
Obrigado por este passo a passo muito detalhado. Acho que vou com o live-CD (pen drive) então. Existe algo especial a considerar?
Noah