他のユーザーのホームディレクトリに移動するファイルが複数あります。私はこのユーザーのホームディレクトリに書き込む権限がありませんが、彼のパスワードを知っています。
私はどうするか知っていますコピーファイル使用量scp
(参照ここ)。ただし、ファイルを移動したい場合は、元のファイルをコピーして削除するのは非効率的です。どのような方法がありますか?移動する未使用のファイルは何ですかsudo
(ルートのパスワードがわからない)?
答え1
ターゲットユーザーが実際に元の場所にあるファイルにアクセスできると仮定すると、次のことができます。
SRC='/path/to/existing/file'
DST='/path/to/new/file'
su target_user sh -c "ln -f '$SRC' '$DST'" && rm -f "$SRC"
これにより、ファイルは新しいユーザーの場所に「移動」しますが、所有権や権限は変更されません。
答え2
su
パスワードを知ることで、すべてのユーザーにアクセスできます。 (sudoの場合はsudoユーザーであり、パスワードを知っている必要があります。)
したがって、ファイルを読み取ることができ、ディレクトリに書き込み可能(削除用)を設定するか、ファイルを共有グループに追加するか、アクセス制御リスト(ACL)を使用しますsetfacl
(Gnu / linuxでファイル権限などを設定する他の方法は何ですか?)
その後su other user
、対処してください。
受信ユーザーに書き込みアクセスを許可せずにこれを行う方法に関する@roaimaの回答も参照してください。