suとsudoはいつ異なるパスワードを使用しますか?


12

私は何でも実行できsudoます; 私のパスワードが受け入れられます。しかしsu、シェルから実行しようとすると、次のように失敗します。

su:間違ったパスワード

問題は何ですか?

回答:


22

su代替ユーザーを意味し、引数なしで呼び出された場合、スーパーユーザーになります。したがって、rootパスワードを入力する必要があります。

多くの人がシステム管理や拡張ユーザー権限を持つ同様のものにコマンドを使用する必要がある場合、これはある種の不便です。すべて同じルートパスワードを共有することで、人々が無制限の権限を持ちたくないだけです。

この種の問題の解決策はsudo( " substitute user do ")です。これにより、だれかが起動できるコマンドを指定し、権限を定義できます。以下の場合sudoは、rootパスワードが、sudoコマンドを起動しようとするユーザーのパスワードを入力する必要はありません。

一部のディストリビューションでは、セキュリティ上の理由でrootユーザーが無効になっています。これはなぜあなたが使用できないかの1つの説明かもしれませんsu。その場合、ルート権限でシェルを取得するにはsudo -s;-)を使用します


5
sudo su -ダッシュがユーザー(この場合はルート)のログインプロファイルに従って環境を設定することを意味する場合、最後のビットを実行することをお勧めします。これにより、通常はPATHセキュリティがわずかに向上しますが、まだ保護されませんecho hi > /dev/my_critical_filesystem
-msw

aaahはこれを忘れました:-)追加のthx!
echox

@echox:では、との間に違いは$ scriptあり$ sudo scriptますか?ユーザーはどちらの場合も同じです。
レーザー

sudo allows a permitted user to execute a command as the superuser or another user, as specified in the sudoers file.-男の須藤から。通常、スクリプトはルート権限で起動されます。それが違いです。
echox

1
@Chris:残念ながら、そのPATHを含むルートユーザー環境全体を継承する場合に必要です。ちなみに、上記でコメントしたが削除した「sudo -s」は、ダッシュなしの「sudo su」と同等であることがわかりました。CWDへの変更もPATHへの変更もありません。
ウォーレンヤング

7

オプションなしのsuコマンドは、デフォルトでrootユーザーになることができます。パスワードを要求するのではなく、ルートパスワードを要求します。

sudoコマンドは常にパスワードを要求します。


2
サイドノートとして、Ubuntuを使用する場合、デフォルトでrootパスワードがロックされているため、rootパスワードがわからない場合がありますhelp.ubuntu.com/community/RootSudo
phunehehe

3
「sudoコマンドは常にパスワードを要求します。」実際には設定可能です。ルートパスワードまたはターゲットユーザーのパスワードを要求するように構成することもできます(またはパスワードをまったく要求しません)。
sepp2k
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.