web-dev-qa-db-ja.com

sudo:setuidrootである必要があります

サーバーを借りました(ubuntu12.04)。彼らは私にrootユーザーアカウントを与えました。

次に、私は入って、以下を使用して新しいユーザーを作成しました。

# adduser <newusername>

そして、パスワードを追加しました。

新しいユーザーアカウントは正常に機能します。ユーザー名とパスワードを使用してそのアカウントにSSHで接続できます。

ただし、新しいユーザーアカウントを使用していると、次のものを使用できなくなります。

Sudo

私が次のようなことをした場合:

Sudo apt-get install build-essential

または次のようなもの:

Sudo su

メッセージが表示されます:

Sudo:setuidrootである必要があります

助けて?

(私は以前に尋ねられた同様の質問を知っていますが、そこで私の解決策を見つけることができませんでした。)

2

理由はわかりませんが、Sudo実行可能ファイルのsetuidビットが設定されていません。これは正しく機能するために必要です。

これを設定するには、chmod u+s $(which Sudo)を実行します。ステートメント$(which Sudo)は、ファイルシステム内でSudo実行可能ファイルが見つかるパス(通常は/ usr/bin/Sudo)を見つけるため、コマンドはchmod u+s /usr/bin/Sudoに展開されます。 Linux/Unix-Systemsの特別なビットの詳細については、 Wikipedia を参照してください。

2
noggerl