
つまり、userA と userB があり、userA がログインするためのパスワードがあり、userA としてログインするときにsudo su - userB
userB に切り替えることができるように誰かがすでに設定しています。
セットアップは次のように機能します(どのようにセットアップされるかはわかりません)
- userA にはルートアクセス権がないため、
sudo su - userB
パスワードを要求しません。 - userB にはパスワードがないので、userB としてログインできる唯一の方法は、1 のコマンドを使用することです。
- ユーザーAとユーザーBはお互いのホームにあるファイルにアクセスできません
では、ユーザー B のホームからユーザー A のホームにファイルをコピーするにはどうすればよいでしょうか?
更新: 以下に提案されているコマンドを試したところ、システムは提案されているすべてのコマンドに対してsudoパスワードを要求しました。sudo su - userB
userA@hostname:~$ sudo su -c any_command userB
[sudo] password for userA:
userA@hostname:~$ sudo su - userB
userB@hostname:~$
答え1
奇妙な回避策ですが...
ユーザーAとして:
cp [ファイル] /tmp/
次に、userB として:
cp /tmp/[ファイル] 。
(または の代わりに /home/userb/desktop )
答え2
catとパイプを使用するだけで問題なく、簡単なコマンドでこれを行うことができます。
userA から userB へは、userA としてログインし、cat /home/userA/file_to_copy | sudo su -c "cat >/home/userB/file_copied" userB を実行します。
userB から userA へは、userA としてログインし、sudo su -c "cat /home/userB/file_to_copy" userB | cat > /home/userA/file_copied を実行します。