Como posso mover o diretório inicial para uma partição separada?

Como posso mover o diretório inicial para uma partição separada?

Gostaria de instalar outra distribuição, mas manter meu diretório inicial. Existe uma maneira de mover o diretório inicial para uma partição separada? Não tenho um disco rígido externo disponível para fazer backup dos meus dados. Eu gostaria de configurar minhas partições conforme sugeridoaqui.

Responder1

Sua pergunta é neutra em termos de distribuição, então se eu mencionar algo específico que você não tenha, basta usar o equivalente do seu lado.

Eu realmente recomendo que você compre um externo para backups, acredite, perder seus dados é o pior.Prossiga por sua conta e risco- Mas se você não conseguir um, aqui está o que você pode fazer.

O que você precisa

  • o tamanho do seu diretório /home
  • espaço livre, maior que o tamanho do seu diretório /home
  • ferramenta de particionamento de disco, eu recomendo gparted

O que fazer

  • Verifique o tamanho do seu diretório /home (o último resultado será o total inicial):

    du -h /home

  • Verifique se você tem espaço livre suficiente para a nova partição:

    df -h

  • Instale o gparted

    sudo apt-get install gparted

Você precisa de mais espaço livre do que o tamanho do seu diretório /home. Se você não tiver espaço livre, não poderá criar essa nova partição e precisará mover seus dados para uma partição externa de qualquer maneira.

Se você tiver espaço, use o gparted para reduzir sua partição existente e, em seguida, crie uma nova partição com o espaço não alocado liberado. Quando sua nova partição estiver pronta, observe que é /dev/sdax (use sudo fdisk -lpara ver isso) e copie seus arquivos /home para ela.

Usando a partição em uma nova distribuição

Você mencionou a instalação de outra distro. Se planeja substituir sua distribuição atual, durante a instalação deverá ser solicitado que você configure as partições. Nesse ponto você pode especificar esta partição como /home, escolhanãopara formatá-lo e tudo ficará bem, você pode pular a próxima seção.

Se, no entanto, você quiser que sua distribuição atual funcione com a nova partição /home, siga esta seção:

Monte a partição em uma distribuição existente

Temos que dizer ao seu sistema operacional para usar a partição como seu novo /home, fazemos isso no fstab, mas primeiro vamos encontrar o UUID desta nova partição:

ls -l /dev/disk/by-uuid

Faça referência cruzada do /sdax da sua nova partição e copie o UUID dela, o meu se parece com 3d866059-4b4c-4c71-a69c-213f0e4fbf32.

Backup fstab: sudo cp /etc/fstab /etc/fstab.bak Editar fstab:sudoedit /etc/fstab

A ideia é adicionar uma nova linha que monte a partição em /home. Use seu próprio UUID, não aquele que posto aqui;)

# <file system> <mount point>   <type>  <options>       <dump>  <pass>
UUID=3d866059.. /home           auto    default         0       1

Salve e reinicie e teste se a nova partição é montada em/home. Execute df -hpara listar todas as partições montadas, /home agora deve estar nessa lista.


Notas

  • Pode ser uma boa ideiafamiliarize-se com o fstabse você não conhece bem. Não tenha pressa e pense em cada etapa.
  • Se você instalar uma nova distribuição e usar o mesmo nome de login, seus arquivos /home antigos cairão automaticamente sob sua propriedade.
  • Este não é um tópico trivial para abordar em um post, mas acho que entendi a maior parte. :)

Responder2

O título do post e sua pergunta me causaram alguma confusão. Você deseja separá-lo homeem uma partição ou apenas deseja reinstalar e manter o mesmo home?

Se tudo o que você deseja é reinstalar todo o sistema operacional enquanto mantém o seu, homevocê pode fazer backup homeem um local que não será afetado pela instalação e, em seguida, restaurá-lo depois disso, junto com uma correção de permissão (use chown -R username:groupnamepara garantir que a propriedade esteja correta ).

Se você quiser seguir algumas práticas recomendadas e separar suas, homeaqui estáo guia que você precisa. Foi escrito para o Ubuntu, mas acho que o mesmo vale para outras distros.

Responder3

Supondo que você já tenha uma partição separada (e se não tiver, provavelmente desejará usargpartedou algo semelhante, para criar um), basta fazer o seguinte (de preferência como usuário root):

 cp -R /home/whatever /path/to/destination
 mv /home/whatever /home/whatever.orig
 ln -s /path/to/destionation /home/whatever 

E então assumindo que tudo funciona como deveria (faça login como usuário e teste)

 rm -rf /home/whatever.orig 

Isso copia todo o diretório (e todo o conteúdo) para o ponto de montagem de destino, renomeia o diretório inicial original (caso algo dê errado no processo, então podemos recuperar), cria um link simbólico do novo local para o inicial original diretório (para o qual tudo (como /etc/passwd) ainda está apontando), então, assumindo que funcionou, remove a cópia de backup que fizemos, deixando a cópia que colocamos no sistema de arquivos de destino.

informação relacionada