シェルの親プロセスは 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」は、最初にシステムにログインしたユーザーです。