ユーザーとしてsudoを実行するときにrootなどの権限が不十分なのはなぜですか?

ユーザーとしてsudoを実行するときにrootなどの権限が不十分なのはなぜですか?

以下は失敗します。

sudo -u chris ls /root
ls: cannot open directory '/root': Permission denied

次は成功します。

sudo ls /root
...

なぜそうなのか理解できません。 root権限を持つことに加えて、-u/ runningユーザーを指定されたパラメータに変更すると問題が解決されると仮定します。$USERこの行動の理由は何ですか?

ベストアンサー1

sudo -u chrischrisrootの代わりにuserとして指定されたコマンドをUSER実行しますchris。したがって、chrisアクセスできない場合/rootsudo -u chris変更されません。

バラよりman sudo:

- ゆう ユーザー- ユーザー=ユーザー

デフォルトのターゲットユーザーではなくユーザーとしてコマンドを実行します(通常)。

sudoこれは特に「rootとして実行」ツールではなく、「他のユーザーまたはグループとして実行」ツールです。

おすすめ記事