Estou tentando vincular meu diretório home em uma máquina em nuvem (OpenNebula) a um diretório no NFS, porque minha máquina em nuvem tem uma capacidade muito limitada de apenas 5 GB.
Eu tenho usado a mesma abordagem há muito tempo, mas tenho que perceber que ela é extremamente confiável, imprevisível e inconsistente.
mkdir /storage/seattle-5/nfs4/home/my_username/vm_home
sudo cp -rp /home/* /storage/seattle-5/nfs4/home/my_username/vm_home
sudo mv /home /old_home_backup
sudo ln -s /storage/seattle-5/nfs4/home/my_username/vm_home /home
sudo tar cvzf /storage/seattle-5/nfs4/home/my_username/vm_home/home_old.tar.gz /old_home_backup/*
De tempos em tempos, quando crio uma nova máquina virtual, vejo que essa abordagem resulta em um comportamento muito inesperado.
Na maioria das vezes, recebo o erro de que durante o processo de 'cópia' as permissões não foram preservadas. Então, no final, apenas meu próprio usuário tem tudo em ordem e todos os arquivos estão acessíveis, mas outros usuários têm todos os seus arquivos e permissões / propriedade completamente errados e quando tentam fazer login eles ficam o erro Could not chdir to home directory /home/[user]: Permission denied
! Por exemplo, vejo algo assim quando executo ls -lah
em seu diretório:
drw-rw---- 6 nobody 4294967294 4.0K May 21 08:47 another_example_user_home_dir
Portanto, a questão é: como posso alterar com segurança a localização do diretório inicial da máquina em nuvem para um diretório no NFS?
Mais importante, existe um comando / biblioteca que é projetado para criar diretórios pessoais diretamente no NFS sem problemas? Estou usando a autenticação Kerboros 5 . Talvez em vez de adduser --disabled-password new_user
haja uma abordagem melhor para criar diretórios pessoais no NFS que evite problemas futuros?
Relacionados:
Arquivos montados sobre o NFSv4 são de propriedade de 4294967294, UIDs e GIDs correspondem