Mudar pastas de usuário para outra partição após instalação do SO

 Por Ciro Mota |  8, Agosto 2020 |  Tempo de leitura aproximadamente 5 minutos.
 Edições: Adição de bloco de anúncios Em 19, Setembro 2023.

Salve salve meus caros leitores, espero que todos estejam bem.

Backup, backup, backup. Este sem dúvida é um dos principais mantras em T.I. Tal qual o CID de Confidencialidade, Integridade e Disponibilidade estão para quem estuda/atua com Segurança da Informação (eu incluso), aliás podemos encaixar o backup em um desses pilares fundamentais que seria a disponibilidade, afinal um backup de disaster recovery ou seu backup doméstico sempre estará disponível (ao menos deveria estar) para ser recuperado após uma formatação por exemplo.

Só quem já precisou recuperar dados que estavam na mesma partição do sistema sabe o quão dura e ingrata é essa tarefa. Aliás, a tarefa de recuperação de dados é sempre custosa, de modo que mantê-los salvos em um lugar apropriado e com cópias é e sempre será a melhor solução. Em uma rede mais robusta com domínio e em termos de armazenamento, podemos com algumas políticas de uso nos precaver de eventuais falhas de S.O ou de disco utilizando o modo de perfil remoto, assim toda rotina de backup do servidor incluirá os arquivos dos usuários.

Como nem sempre é possível utilizar perfil remoto e eventuais falhas de S.O são corriqueiras, diante disso, seja no nosso PC pessoal ou em PCs de empresas, utilizar uma segunda partição ou disco para ser utilizada somente para armazenamento de arquivos pode ser uma boa prática de que podemos tirar proveito. Costumeiramente sempre utilizei uma segunda partição para isso e fazia essa ’linkagem’ manualmente após instalado o Windows. Hoje usando Linux, isso pode ser feito já na instalação do sistema. Vamos então abordar esses dois pontos logo abaixo.

Continua após a publicidade

/home

Nas Distros Linux nós contamos com duas opções para poder montar o diretório /home em outra partição/disco, ou escolhemos montá-lo durante a instalação conforme cito acima ou após instalado. Este último gera um pouco mais de trabalho mas perfeitamente executável, para isso seguiremos alguns passos.

  1. O primeiro deles obviamente é ter uma partição/disco reservada para o fim, utilize o Gparted ou Gnome Disk ou correlatos caso seja necessário redimensionar ou criar/formatar um novo disco que seja inserido. Ou via terminal com fdisk /dev/sdX e mkfs.ext4 /dev/sdX. Rode um fdisk -l para localizar-se. No meu caso, criei um novo disco para este fim.

  2. Necessário agora saber o UUID da partição criada, necessário para montar corretamente o diretório /home. Reserve o valor encontrado.

sudo tune2fs -l /dev/sdX | grep UUID
  1. Crie uma pasta para abrigar a montagem da partição recém criada.
sudo mkdir /mnt/temporaria
  1. Eleve os privilégios do terminal para root, sudo su ou sudo -i.
Continua após a publicidade
  1. Cole ou digite (atenção a identação de espaços na linha) as alterações a serem inseridas no arquivo /etc/fstab:
echo "UUID=insira-o-que-foi-capturado-aqui   /home    ext4   defaults    0    2" >> /etc/fstab
  1. Mova todo o conteúdo da pasta /home antiga para a atual recém criada:
sudo mv -f /home/$USER /mnt/temporaria
  1. Traga as permissões para seu usuário:
sudo chown -R $USER:$USER /mnt/temporaria/$USER

Reinicie e a mágica aconteceu, sem complicações. Algumas personalizações podem ser perdidas, então se for possível, utilize o procedimento antes de realizar suas configurações pessoais. O uso do /etc/skel conforme falamos no artigo anterior Pós instalação em Distros Linux e imagem do sistema, continua valendo normalmente.

Continua após a publicidade

Caso seja necessário uma nova formatação no futuro para mudança de distro ou relacionado a problemas, basta montar a partição durante a instalação e atentando para que o nome de usuário seja exatamente o que foi usado na instalação anterior.

Linux Mint utilizado nos testes

Meus Documentos

No Windows a coisa tenda a ser mais trabalhosa, haja visto que seria necessário mover cada pasta individualmente ou pelo menos só as principais como “Documentos” e/ou “Imagens” para a outra partição. Felizmente acabei encontrando um script desenvolvido por um programador Francês, que inicialmente foi projetado para Windows 7, porém pude testar sua eficácia no Windows 10. Vamos a ele.

  1. Faça o download do script aqui. Trata-se de um conjunto de arquivos .bat e são facilmente auditáveis caso precise e a fonte dele está aqui.

  2. Crie uma nova pasta na partição/disco que irá abrigar a nova pasta de documentos.

Continua após a publicidade
  1. Descompacte o arquivo, execute como Administrador o arquivo “PositionDefaultFolderSevenModular.cmd”.

E pronto. Após reiniciar será refeito o link para todas as pastas de usuário na nova partição. No exemplo padrão e no meu exemplo a partição foi em “D:", porém caso no seu cenário seja diferente, basta alterar a letra da unidade no arquivo de referência contido na pasta “EN\ PositionDefaultFolderSevenModular.ini”.

A cada novo usuário criado será automaticamente ligado a essa nova pasta ao invés da localização padrão na partição do sistema. Esse procedimento pode ser combinado com o Modo de Auditoria para criação de contas padrão, que tratamos no artigo Como criar uma imagem personalizada do sistema Windows, ou seja aplicar esses script na conta de Administrador do Modo de Auditoria e seguir para a parte de personalização.

Continua após a publicidade

Observe que as pastas do usuário, mesmo claramente visível, não serão possíveis serem acessadas por outros usuários. Podemos inclusive utilizar um trick no registro para manter toda essa partição/disco oculta mas os dados seguirão visíveis para os usuários. O usuário Tux (criei com esse nome pela zoeira mesmo :smile:) na imagem abaixo é um usuário padrão do sistema, assim como o usuário CiroM.

Caso seja necessário formatar o S.O por qualquer outro motivo, precisaremos reaplicar o script e redefinir as permissões de propriedade da pasta para o usuário novamente e seus arquivos estarão mantidos.

Esses procedimentos listados mitigarão apenas para falhas de S.O, não tendo qualquer eficácia para problemas de hardware ou ransomware. Tudo o que foi colocado aqui jamais vai invalidar a necessidade de backup periódico, mesmo sabendo que no dia a dia de suporte nem sempre teremos a disposição tempo e espaço para realização dessa atividade. Assim como cito acima que para nós, backup é um mantra, tenha esse conceito enrizado também na cultura dos seus funcionários e/ou clientes.

Continua após a publicidade

Vocês utilizam alguma técnica diferente? Me deixe saber logo abaixo nos comentários.
Espero que mais esse artigo seja útil a vocês.

Até a próxima!