visudo

Autres langues

Langue: ja

Autres versions - même langue

Version: 1.6.6 (fedora - 25/11/07)

Section: 8 (Commandes administrateur)

名前

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

書式

visudo [ -c ] [ -f sudoers ] [ -q ] [ -s ] [ -V ]

説明

visudo は、vipw(8) と同じような安全な方法で sudoers ファイルを編集する。 visudo は複数同時の編集に対して sudoers ファイルをロックし、 基本的な文法エラーやパースエラーをチェックしてくれる。 sudoers ファイルが現在すでに編集中であった場合、 ``try again later'' というメッセージが出される。

visudo が使用するエディタのリストは、 コンパイル時に設定され、ハードコードされている。 これは editor sudoers Default
変数で上書きできる。 このリストのデフォルトはシステムにある vi(1) へのパスで、 configure スクリプトで決定される。 上で述べたリストのエディタが EDITOR
VISUAL
環境変数にない限り、 通常 visudo はこれらの環境変数を使わない。 ただし visudo---with-enveditor フラグをつけて コンパイル時に設定されている場合、 または sudoersenveditor Default
変数が設定されている場合、 visudoEDITOR
VISUAL
で定義されている 任意のエディタを使用する。 これはセキュリティホールになるので注意すること。 EDITOR
VISUAL
に設定するだけで、 ユーザに任意のプログラムの実行を許可してしまう。

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

オプション

visudo は、以下のようなコマンドラインオプションを受け付ける。
-c
check-only (チェックのみ) モードを有効にする。 既存の sudoers ファイルの文法チェックが行われ、 sudoers の情報の詳細を標準出力に表示する。 文法チェックが成功した場合、 visudo は値 0 で終了する。 文法エラーがあった場合、 visudo は値 1 で終了する。
-f
sudoers ファイルの場所を指定して別のファイルを使う。 このオプションを使うと、 visudo はデフォルトの /etc/sudoers ではなく、 ユーザが選んだ sudoers ファイルを編集 (またはチェック) する。 使用されるロックファイルは、 指定した sudoers ファイルに ``.tmp'' を付けたものである。
-q
quiet (表示抑制) モードを有効にする。 このモードでは文法エラーの詳細は表示されない。 このオプションは -c フラグと組み合わせた場合にのみ役立つ。
-s
sudoers ファイルの strict (厳密な) チェックを可能にする。 エイリアスが定義される前に使用されている場合、 visudo はパースエラーとみなす。 エイリアスと、大文字・数字・アンダースコア ('_') のみを含む ホスト名またはユーザ名を区別するのは不可能であることに注意すること。
-V
(version) オプションは、 visudo にバージョン番号を表示させた後、終了させる。

エラー


sudoers file busy, try again later.
誰か他のユーザが、現在 sudoers ファイルを編集している。
/etc/sudoers.tmp: Permission denied
root 権限で visudo を実行しなかった。
Can't find you in the passwd database
あなたのユーザ ID がシステムの passwd ファイルのなかに見つからない。
Warning: undeclared Alias referenced near ...
定義する前に {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 ファイルを参照するか、 http://www.sudo.ws/sudo/history.html を参照すること。

バグ

sudo のバグを発見したと思った場合は、 http://www.sudo.ws/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 のシェルを入手させないための簡単な方法はない。

関連項目

vi(1), sudo(8), vipw(8).