シェルの親プロセスは su -
です 、その親は sudo su -
です .したがって、sudo su -
を実行しているユーザーを見つける必要があります。 ps
を使用して 2 段階でさかのぼって検索することにより、 の親プロセス :
ps -o user= $(ps -o ppid= $(ps -o ppid= $PPID))
しかし、あなたは sudo su -
をするべきではありません sudo のバージョンが sudo -i
にするには古すぎない場合 . Sudo は環境変数 SUDO_USER
を設定します sudo を実行したユーザーの名前に。 sudo su -
では表示されません なぜなら su -
環境をきれいにします。
$ sudo -i
# echo $SUDO_USER
gilles
コマンド whoami
を実行 次のようなものが返されます:
gladimdim tty2 2011-01-27 23:54 (:0)
太字の「gladimdim」は、最初にシステムにログインしたユーザーです。