Linux에서 일부 cli 명령에 대해 비밀번호 없는 설정을 시도하는 데 문제가 있습니다.

Linux에서 일부 cli 명령에 대해 비밀번호 없는 설정을 시도하는 데 문제가 있습니다.

컴퓨터 환경

운영 체제: 아치 리눅스 - 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.logsudosudo

관련 정보