sudo
다음 권한을 사용하여 (crontab에서) 자동으로 실행되도록 bash 스크립트를 설정했습니다.이것 visudo
해결책.
스크립트를 여러 번 실행해야 하므로 스크립트가 오염될 수 있으므로 출력을 /var/log/auth.log
비활성화했습니다 (TTY
내가 지정한 특정 스크립트에서만 작동합니다.visudo
) 지시를 따르다이것성공적으로 해결되었습니다. 내가 말하는 것은 TTY
다음과 같은 종류의 로그 항목입니다 [user] : TTY=unknown ; PWD=... ; USER=root ; COMMAND=...
.
하지만 다음 두 줄이 남았습니다./var/log/auth.log
각스크립트가 실행된 시간입니다( sudo
권한으로 실행됨). 여러 번 실행되었기 때문에 이 출력이 여러 번 표시되는데 이는 짜증스럽습니다.
Nov 01 00:00:00 1234567 sudo: pam_unix(sudo:session): session opened for user root by (uid=0)
Nov 01 00:00:00 1234567 sudo: pam_unix(sudo:session): session closed for user root
나는 이 질문을 알고 있습니다:특정 사용자에 대한 auth.log에서 sudo PAM 메시지를 어떻게 중지합니까?, PAM 메시지를 비활성화할 수 있는 것으로 보입니다.사용자당.
하지만 위의 PAM 메시지를 비활성화하는 솔루션을 찾을 수 없습니다./var/log/auth.log
특정 스크립트에서만 작동합니다.. 기본적으로, 나는 로깅에서 TTY
출력을 제거하는 것과 동일한 작업을 찾고 있습니다.visudo
오직 내가 지정한 특정 스크립트.
어떤 아이디어가 있나요?
(시스템은 Ubuntu 18.04 LTS를 실행 중입니다.)
답변1
crontab
옵션에서 스크립트를 실행하는 경우 crontab
루트 디렉터리(또는 시스템 디렉터리)에서 실행할 수 있으며 sudo
더 이상 필요하지 않습니다.