visudo
含まれている他のファイルのコンテキストでファイルの完全性チェックを実行できますか/etc/sudoers.d
?
想像する:
/etc/sudoers.d
ファイルに新しいファイルを追加したいです。ファイル自体が正確で、visudo -c
パーサーを通過します。
ただし、.NETCmnd_Alias
の他のファイルと競合する行が含まれていますetc/sudoers.d
。
aに移動すると、エラーが原因でコマンドが中断さ/etc/sudoers.d
れます。sudo
Alias '<name>' already defined near line
質問:
sudo
新しいファイルを挿入した後にファイルが破損していないことを確認する方法はありますかsudoers.d
?
sudo
または、エラーが発生したときに埋め込まれたファイル処理を無視/停止する方法はありますか?
答え1
/etc/sudoers
提案された新しいファイルの関連付けを確認してください。
sudo bash -c 'visudo -cf <(cat /etc/sudoers /path/to/to-be-added-file)'
invisudo
が解析されるため、in内のすべての関連ファイルもチェックされます。#includedir
/etc/sudoers
sudoers.d
$ sudo cat /etc/sudoers.d/foo
Cmnd_Alias FOO = /bin/bar
$ sudo cat /tmp/bar
Cmnd_Alias FOO = /bin/foo
$ sudo bash -c 'visudo -cf <(cat /etc/sudoers /tmp/bar)'
>>> /dev/fd/63: Alias `FOO' already defined near line 31 <<<
parse error in /dev/fd/63 near line 31