svnリポジトリにsudoersファイルが保存されています。ただしsvn export
、/etc/sudoers
sudoがvisudoによって編集されていないことを検出し、構文エラーが発生したため実行できません。正確にどんなvisudo -f
役割を果たしますか?次のことができますか?
cd /tmp && svn export <URL>/sudoers && visudo < /tmp/sudoers
手動介入は必要ありませんか?
答え1
これは、visudoを編集していないためではなく、構文エラーがあるためです。また、権限を確認してください。/etc/sudoers
使わずに編集してもまったく大丈夫ですvisudo
。visudo
実際のファイルをコミットする前に、単独のアクセスを保証し、構文を検証するためにのみ使用されます。あなたの質問に答えるには:
VISUAL="cp /tmp/sudoers" visudo
visudo
/etc/sudoers.tmp
返されたときにファイルの新しい内容の構文を確認し、/etc/sudoers
満足すればコミットするデフォルトのエディタ呼び出しを使用します。好みのエディタを設定すると、cp /tmp/sudoers
基本的にこれを行うように指示しますcp /tmp/sudoers /etc/sudoers.tmp
。
(sudoers
一時ファイルを誰でも書き込むことができるディレクトリに保存するのは/tmp
危険です)
答え2
sudoers
編集して配布してきました。以下を行います。
visudo -c -f <filename>
svnにチェックインする前に構文を確認するために使用されます。- 配布するときは、権限が(またはBSD派生)所有していることを確認してください
0440
。root:root
root:wheel
チェックインするホストが展開するオペレーティングシステムとは異なるオペレーティングシステムを実行している場合は、そのvisudo -c -f <filename>
場所にコピーする前にターゲットシステムでも実行する必要があります。