Linux(CentOS)のsudoコマンドでsudoersファイル内にはありません / xxx is not in the sudoers file. が出てくる

CentOSでsudoコマンドを使ったら下記のメッセージが出てくることがあり、コマンドが実行できません。

「(ユーザー名) is not in the sudoers file. This incident will be reported.」

または

「(ユーザー名) は sudoers ファイル内にありません。この事象は記録・報告されます。」

こんな感じですね。

これは現在のユーザーがsudoの実行権限を持っていないためです。ここで実行権限をつけます。まず、suコマンドを実行してrootアカウントに移行します。

下記のコマンドを打ちます。

visudo

下記の行を見つけます。(追記 必ずしもこの場所である必要はありません。元のファイルの例に従っているだけで、このファイルのどの行に書いても構いません)

%wheel  ALL=(ALL)    ALL

この行の下に現在のユーザー名を追記します。

ユーザー名    ALL=(ALL)    ALL

%wheelの行頭にカーソルを持っていき、O(オー)を入力してから
ユーザー名    ALL=(ALL)    ALL
と入力して、コロン(:)とwとqを入力して保存します。

これでsudoコマンドが使えるようになります。

このファイルは/etc/sudoersを編集しています。viなどのテキストエディタで直接編集はしないようにしてください。通常読み取り専用ファイルとして開かれます。必ずvisudoコマンドを使って編集するようにしてください。

タイトルとURLをコピーしました