컴퓨터 환경
운영 체제: 아치 리눅스 - Manjaro
쉘: zsh
목적
다음 명령을 활성화하려고 합니다.비밀번호가 필요하지 않습니다내 기본 사용자 계정의 경우:ab
sudo systemctl stop NetworkManager
sudo systemctl start NetworkManager
실패한 시도
나는 온라인 도움말을 읽고 따르려고 노력했으며 sudo -i
다음 코드를 사용하여 파일을 생성하여 이를 달성했습니다./etc/sudoers.d/ab
ab ALL=(root) NOPASSWD: sudo systemctl stop NetworkManager
ALL=(root) NOPASSWD: sudo systemctl start NetworkManager
문제 해결 시도
성공하지 못한 채 다음과 같은 편집을 시도했습니다.
root
로 변경ALL
systemctl
로 변경/bin/systemctl
- 삭제
sudo
편집하고 저장할 때마다 cat /etc/sudoers.d/ab
변경 사항이 있는지 확인하고 항상 새 터미널을 열어 명령을 시도합니다. 매번 비밀번호를 묻는 동안 다음 조합을 시도합니다.
sudo systemctl start NetworkManager
sudo /bin/systemctl start NetworkManager
systemctl start NetworkManager
/bin/systemctl start NetworkManager
질문
새 터미널을 시작하는 것으로 충분합니까, 아니면 변경 사항을 시작하려면 전체 시스템을 재부팅해야 합니까?
아니면 다른 단계를 잊어버렸을까요?
답변1
다음 줄은 /etc/sudoers.d/ab
아마도 다음과 같을 것입니다:
ab ALL=(root) NOPASSWD: /bin/systemctl stop NetworkManager
ab ALL=(root) NOPASSWD: /bin/systemctl start NetworkManager
sudo
일반 로컬에 저장된 sudoers.d 파일(LDAP 서버에 저장된 sudoers 정보만큼 고급 파일은 없음)을 사용하면 sudoers 파일에 대한 모든 변경 사항은 로그아웃/로그인하거나 새 터미널을 시작하거나 이와 유사한 작업을 수행할 필요 없이 즉시 적용됩니다. .
sudo
성공 및 실패한 사용 시도는 일반적으로 기록되므로 에서 메시지가 있는지 해당 로그 파일(일반적으로 배포에 따라 /var/log/secure
또는 )을 확인해야 합니다 . 이러한 메시지에는 사용자가 sudoers를 통해 실행하려는 명령이 실행을 허용하기 위해 sudoers 파일에 작성해야 하는 정확한 형식으로 포함됩니다./var/log/auth.log
sudo
sudo