GNU/Linux >> Linux の 問題 >  >> Linux

ルートに sudo su したら、自分のユーザー名を表示するコマンドはありますか?

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


Linux
  1. 実際のシステム管理者はsudoを実行しません

  2. Sudoを使用したリダイレクトまたはパイピングを含むコマンドを実行するにはどうすればよいですか?

  3. 年齢別にファイルを削除しますか?

  1. SuなしでSudoによってrootパスワードを変更しますか?

  2. コマンドラインからユーザーへのSudo権限を無効にしますか?

  3. Yumコマンドチートシート

  1. Linux での sudo コマンドの例

  2. visudo:コマンドが見つかりません

  3. sudoedit:コマンドが見つかりません