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

SudoとSuを介して実行すると、パス変数が異なるのはなぜですか?

私のfedoraVMで、私のユーザーアカウントで実行しているとき、私は/usr/local/binを持っています 私の道のり:

[[email protected] ~]$ env | grep PATH
 PATH=/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/justin/bin

同様に、suを実行する場合 :

[[email protected] ~]$ su -
Password: 
[[email protected] justin]# env | grep PATH
PATH=/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/justin/bin

ただし、sudoを介して実行する場合 、このディレクトリはパスにありません:

[[email protected] justin]# exit
[[email protected] ~]$ sudo bash
[[email protected] ~]# env | grep PATH
PATH=/usr/kerberos/sbin:/usr/kerberos/bin:/sbin:/bin:/usr/sbin:/usr/bin

sudoを介して実行すると、パスが異なるのはなぜですか ?

承認された回答:

/etc/sudoersをご覧ください 。 Fedora(およびRHEL、Ubuntuなど)のデフォルトファイルには次の行が含まれています:

Defaults    secure_path = /sbin:/bin:/usr/sbin:/usr/bin

これにより、sudoでバイナリを実行するときにパスがクリーンになります。これは、この質問で指摘された懸念のいくつかから保護するのに役立ちます。 /sbinがない場合にも便利です および/usr/sbin あなた自身の道で。


Linux
  1. Ddはいつデータのコピーに適していますか? (または、Read()とWrite()が部分的である場合)?

  2. パイプコマンドを実行するときにLinuxユーティリティは賢いですか?

  3. パッケージマネージャーを実行して12.04を更新するときのPkgproblemresolverエラー?

  1. ssh-add の実行時に Permission Denied が表示されるのはなぜですか?

  2. 「sudo」パスワードが「su root」パスワードと異なるのはなぜですか

  3. x86 と x86_64 の Linux システムコール番号が異なるのはなぜですか?

  1. 別のユーザーおよびグループとしてファイルを作成しますか?

  2. IP 転送 =いつ、なぜこれが必要なのですか?

  3. sudoの使用時にlinuxコマンドが見つかりましたが見つかりませんでした