파일이 포함된 전체 생태계에 대한 Visudo 온전성 검사를 수행하시겠습니까?

파일이 포함된 전체 생태계에 대한 Visudo 온전성 검사를 수행하시겠습니까?

visudo포함된 다른 파일의 컨텍스트에서 파일에 대한 온전성 검사를 수행할 수 있습니까 /etc/sudoers.d?

상상하다:

/etc/sudoers.d파일에 새 파일을 추가하고 싶습니다 . 파일 자체가 정확하며 visudo -c파서를 통과합니다.

그러나 .NET Cmnd_Alias의 다른 파일과 충돌하는 줄이 포함되어 있습니다 etc/sudoers.d.

a로 이동하면 오류 로 인해 명령이 중단 /etc/sudoers.d됩니다 .sudoAlias '<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)'

in 이 visudo구문 분석되므로 in 에 있는 모든 관련 파일도 검사됩니다.#includedir/etc/sudoerssudoers.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

관련 정보