なぜvisudoで/ etc / sudoersを編集する必要があるのですか?


回答:


71

システムの破損を防ぐために、主にvisudoを使用します。Visudoは変更をチェックして、混乱しないようにします。何かを台無しにした場合、レスキューモードで再起動せずに、それを修正する能力を完全に破壊したり、特権を必要とする何かをしたりできます。

これについては manページで説明しています。

visudoは、vipw(8)に似た安全な方法でsudoersファイルを編集します。visudoは、複数の同時編集に対してsudoersファイルをロックし、基本的な健全性チェックを提供し、解析エラーをチェックします。sudoersファイルが現在編集中の場合、後で再試行するメッセージが表示されます。


3
面白い!+1、私がずっと前に知っていたはずだったものの簡単な説明を示すために:)
グレッグミーハン

7
visudoの動作は、sudoeditと呼ばれるコマンドとして一般的に利用可能です。これは、同じロック/コピー/編集/コピー/ロック解除サイクルを実行します(ただし、解析ステップでは明らかにそうではありません)。これの利点の1つは、rootとしてエディターを起動することなく、ルート所有のファイルを編集するためのsudoアクセスをユーザーに許可できることです。これにより、エディター内からシェルを起動できます。sudoeditの実行中にエディターからシェルアウトした場合、私のeuidは自分のものです。
ジェームズF

18

Zoredacheの答えは完璧です。

言及する価値があるもう一つのこと。EDITORまたはを設定することにより、お気に入りのエディターを使用できますVISUAL

export EDITOR=whatevertexteditoryouwant
export VISUAL=whatevertexteditoryouwant

または:

EDITOR=whatevertexteditoryouwant visudo

それを行うと、構文チェックのステップが実行されますか、それとも@James Fが推奨するようにsudoeditを呼び出すことに相当しますか?
o0 '。

はい、あなたの質問に対する答えです。cliから呼び出すことができるほぼすべてのエディターを使用できます。
cstamas

3
それはイエスかノーの質問ではありませんでした:V
o0 '。

5
それはなりません構文チェックを。
cstamas
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.