他のユーザーのホームディレクトリに移動したいディレクトリ(およびその内容を再帰的に)があります。私はこのユーザーのホームディレクトリに書き込む権限がありませんが、彼のパスワードを知っています。
私はどうするか知っていますコピー使用するディレクトリ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
。