sudoを使用せずにディレクトリ(コンテンツを含む)を他のユーザーのホームディレクトリに移動しますか?

sudoを使用せずにディレクトリ(コンテンツを含む)を他のユーザーのホームディレクトリに移動しますか?

他のユーザーのホームディレクトリに移動したいディレクトリ(およびその内容を再帰的に)があります。私はこのユーザーのホームディレクトリに書き込む権限がありませんが、彼のパスワードを知っています。

私はどうするか知っていますコピー使用するディレクトリscp -r(参照ここ)。ただし、両方のディレクトリは同じファイルシステムにあるため、ディレクトリを移動したい場合は、元のディレクトリをコピーして削除するのは非効率的です。どのような方法がありますか?移動する(ルートのパスワードはsudoわかりませんが、他のユーザーのパスワードはわかっています)?

関連:バラよりここシングルを移動する方法文書。ただし、この投稿はディレクトリには適用されません。

ベストアンサー1

所有権を変更せずにファイルを移動するには、そのファイルを含むディレクトリに書き込むことができます。したがって、/home/usera/dir1/dir2コンテンツをに移動するには、/home/userb/dir3次から始めてくださいusera

cd ~/dir1
find . -type d -print0 | xargs -0 chmod 777
su userb
cd ~/dir3
mv ~usera/dir1/dir2 .
exit

次に、usera権限を元の状態(特にdir1)に復元します。

useraただし、移動されたファイルの所有者は維持され続けるため、不便になる可能性があります。もう1つのオプションは;を使用して同様の操作を実行してcp -rlリンクファームを作成することです。これは同様の条件で機能しますuserb

おすすめ記事