visudo(8)

名前
visudo - sudoers ファイルを編集する

書式
visudo [ -s ] [ -V ]

説明
visudo は、vipw(8) と同じような安全な方法で sudoers ファイルを編集する。 visudo は複数同時の編集に対して sudoers ファイルをロックし、 基本的な文法エラーやパースエラーをチェックしてくれる。 sudoers ファイルが現在すでに編集中であった場合、 "try again later" というメッセージが出される。 デフォルトの設定では、エディタとして vi(1) が使用されるが、 環境変数 EDITOR や VISUAL に設定された エディタを使用可能にするコンパイル時オプションもある。

visudo は、編集後 sudoers ファイルをパースし、 文法エラーがあった場合は変更を保存しない。 エラーが見つかると、それが起こった行番号を示すメッセージが表示され、 "What now?" というプロンプトが出される。 この場合、 sudoers ファイルを再編集するならば "e", 変更を保存せずに終了するならば "x", 終了と変更の保存をするならば "Q" を入力すればよい。 "Q" オプションは特別に注意を払って使用すべきである。 なぜなら、visudo はパースエラーになるといっているので、 パースエラーが修正されるまでは、sudo と全てのユーザが sudo を実行できなくなるからである。 このプロンプトでこれら以外のコマンドを実行すると、 簡単なヘルプメッセージが表示される。 パースエラーが見つかった後で sudoers を編集するときは、 カーソルがエラーが起こった箇所に置かれる (エディタがこの機能をサポートしている場合のみ)。

オプション
visudo は、以下のようなコマンドラインオプションを受け付ける。 sudoers ファイルの厳密なチェックを可能にする。 エイリアスが定義される前に使用されている場合、 visudo はパースエラーとみなす。 エイリアスと、大文字・数字・アンダースコア ('_') のみを含む ホスト名またはユーザ名を区別するのは不可能であることに注意すること。 -V (バージョン) オプションは、 visudo にバージョン番号を表示させた後、終了させる。

エラー
誰か他のユーザが、現在 sudoers ファイルを編集している。 root 権限で visudo を実行しなかった。 あなたのユーザ ID がシステムの passwd ファイルのなかに見つからない。 定義する前に {User,Runas,Host,Cmnd}_Alias のどれかを使用している。 または、大文字・数字・アンダースコア ('_') のみを含んだ ユーザまたはホスト名がリストにある。 後者の場合、(sudo は警告を出さないので) 警告を無視することができる。 -s (strict 厳密な) モードでは、これらは警告ではなくエラーになる。

環境変数
visudo に (コンパイル時に) --with-env-editor オプションが設定されていた場合にのみ、 以下の環境変数が使われる。

 EDITOR                 エディタとして visudo に使用される。
 VISUAL                 EDITOR が設定されていない場合、visudo に使用される。

ファイル

 /etc/sudoers           誰が何を実行できるかのリスト。
 /etc/sudoers.tmp       visudo のロックファイル。

著者
多くの人々が長年に渡り sudo の製作に携わってきた。 このバージョンの visudo は、

 Todd Miller            <Todd.Miller@courtesan.com>
によって書かれた。 更に詳しくは、sudo ディストリビューションの HISTORY ファイルを参照すること。

バグ
sudo のバグを発見したと思った場合は、 http://www.courtesan.com/sudo/bugs/ にバグの報告を送って下さい。

放棄宣言
Visudo is provided ``AS IS'' and any express or implied warranties, including, but not limited to, the implied warranties of merchantability and fitness for a particular purpose are disclaimed. See the LICENSE file distributed with sudo for complete details.

警告
visudo の使用するエディタがシェルにエスケープできる場合、 ユーザに root のシェルを入手させないための簡単な方法はない。

関連項目
sudo(8), vipw(8).