디버깅을 도와주세요. sudo
올바르게 설정되었음에도 불구하고(내 생각에는) 명령 앞에 접두사를 붙이면 여전히 암호를 입력하라는 메시지가 표시됩니다.
나는 그룹에 속해 있습니다
wheel
.$ groups network power users storage lp input audio wheel dilawars
다음을 사용하여 올바른 줄의 주석 처리를 제거했습니다
visudo
.## ## User privilege specification ## root ALL=(ALL) ALL ## Uncomment to allow members of group wheel to execute any command # %wheel ALL=(ALL) ALL ## Same thing without a password %wheel ALL=(ALL) NOPASSWD: ALL
여러 번 로그아웃하고 로그인했지만 이라고 말할 때마다 sudo cmd
비밀번호를 입력하라는 메시지가 표시됩니다.
저는 마자로 리눅스를 사용하고 있습니다.
출력에서 다음 줄을 발견했습니다 strace sudo ls
.
write(2, "effective uid is not 0, is /usr/"..., 133effective uid is not
0, is /usr/bin/sudo on a file system with the 'nosuid' option set or
an NFS file system without root privileges?) = 133
답변1
사용자는 여러 규칙을 일치시킬 수 있습니다. 이 경우 마지막 일치 규칙이 우선합니다. 따라서 이사하는 경우:
%wheel ALL=(ALL) NOPASSWD: ALL
파일 끝까지 가면 작동합니다.
답변2
Aurman 구현은 sudo -v
시작 시 사용자 자격 증명을 한 번 캐시하도록 강제합니다. 기본적으로 이 옵션을 사용하면 sudo
일치하는 모든 항목에 태그가 있는 경우에만 비밀번호를 묻습니다 NOPASSWD
. 그래서 /etc/sudoers
다음과 같은 것이 있다면 :
%sudo ALL=(ALL:ALL) ALL
%wheel ALL=(ALL:ALL) NOPASSWD: ALL
귀하는 및 두 그룹의 구성원이므로 wheel
어쨌든 sudo
비밀번호를 묻는 메시지가 표시됩니다. 일치하는 항목 중 하나 이상에 태그가 sudo
있는 경우 비밀번호를 묻지 않도록 구성할 수 있습니다 . NOPASSWD
존재하다 /etc/sudoers
:
Defaults verifypw = any