root にはすべての権限があるのに、/etc/sudoers で root ALL=(ALL) ALL となっているのはなぜですか?

root にはすべての権限があるのに、/etc/sudoers で root ALL=(ALL) ALL となっているのはなぜですか?

私はこの質問を見てみました: sudoersファイル内の「modernNeo ALL=(ALL:ALL) ALL」と「modernNeo ALL=(ALL) ALL」の違いを理解しようとしています

まだ質問があります。「root」ユーザーにはすべての権限があるのに、なぜLinux システムではそうroot ALL=(ALL) ALLなっているのでしょうか?/etc/sudoers

## Allow root to run any commands anywhere
root ALL=(ALL) ALL

コメントアウトしてみましたが、ルート ユーザーにはまだすべての権限があり、ルート ユーザーにはまったく影響しません。root ALL=(ALL) ALL役に立たないようです。

答え1

このエントリは がroot実行できることを保証しますsudo。コメントアウトすると、

sudo ls

実行はroot失敗します。

sudoこれは便利なことです。ユーザーは、あまり考えずにコマンドを実行できるのです。つまりsudoこれらは、 が有効なユーザーとして実行されているかどうかに関係なく、同じように動作します(それが良いアイデアであるかどうかは別の問題です)。また、スクリプトが を使用して権限を要求し、 として直接実行された場合でも問題なく動作することもroot意味します。sudorootroot

関連情報