sudoers.d 디렉토리에 있는 sudoers 파일을 수정하여 다음과 같은 그룹을 허용하려고 합니다.SWTS"자동화 작업의 일부로 cp 및 chown을 실행합니다. 이를 달성하기 위해 아래와 같이 Cmnd_Alias를 생성하고 다음 이름의 파일에 저장했습니다 /etc/sudoers.d/00-cmds-swts
.
Cmnd_Alias SWTS_COMMANDS = /usr/bin/cp -r * /home/bbc/leo/BQD*, /bin/chown -R bbc:bbc /home/bbc/leo/BQD*
그러나 visudo를 사용하여 파일을 편집하고 저장하려고 하면 다음 오류가 발생합니다.
>>> 00-cmds-qa: syntax error near line 1 <<<
내가 무엇을 놓치고 있는지 잘 모르겠습니다. cp 명령의 소스와 관련이 있습니까?
/etc/sudoers.conf/swts-users
나는 그 아래에 다음 내용이 포함된 다른 파일에서 명령 별칭을 사용하게 되었습니다 .
%swts ALL=(bbc:bbc) NOPASSWD: SWTS_COMMANDS
답변1
명령에서 파일의 특수 문자를 사용하는 경우 :
해당 문자를 이스케이프해야 한다는 것을 알았습니다. sudoers
따라서 내 예에서 문제가 되는 부분은 명령 :
의 부분 입니다 chown
.
/bin/chown -R bbc:bbc /home/bbc/leo/BQD*
아래의 것으로 교체했는데 작동했습니다.
/bin/chown -R bbc\:bbc /home/bbc/leo/BQD*