/homeがNFSボリューム上のディレクトリへのシンボリックリンク(たとえば/nfsvol/some/other/path/home)になるように設定されたシステムがあります。これをコンピュータ自体のファイルシステムに戻す必要がありますが、最も安全な方法が何であるかよくわかりません。
- /homeの内容を/new_homeにコピーし、/homeを削除し、/new_homeの名前を/homeに変更します。
- then を使用すると、
usermod -d -m /new_home/$USERNAME $USERNAME
/new_home の名前が /home に変更されます。しかし、/new_homeの名前を/homeに変更すると後ろに走るとusermod -d -m
問題が発生しますか?システムのどの部分で、まだホームディレクトリが/new_homeにあると思いますか? - もっと良い方法がありますか?
また、usermodを使用している場合は、移動操作が完了するまでユーザーアカウントをロックすることを検討する必要がありますか?一部のユーザーは非常に大きなホームディレクトリ(> 100 GB)を持っているため、数分かかることがあります。
答え1
rsyncを使用すると、ユーザーがシステムを使用している間でもデータを安全にコピーできます。その後、短時間で最終更新を実行して変更を完了できます。
mkdir /home1
chmod 755 /home1
rsync -avz /nfsvol/some/other/path/home/ /home1
その後、ユーザーと一緒に停電を準備します。誰もがログアウトしていることを確認し、必要に応じてすべてのログインをブロックしてください。その後、最終同期と変更を行います。
rsync -avz /nfsvol/some/other/path/home/ /home1
rm /home
mv /home1 /home
前述のように、現在nfsボリューム上のすべてのデータをホストするのに十分なローカルディスク容量があることを確認してください。ローカルディスクの残りの部分に影響を与えずに成長できるように、/homeに十分なスペースがあることを確認してください。
可能であれば、リスクを最小限に抑えるために、/homeを/と1つのパーティションに分割するのが最善です。