다음 명령을 사용하여 sudoers 사용자 목록에 자신을 추가했습니다.
root@debian:/home/oshirowanen#adduser oshirowanen sudo
명령을 다시 실행하려고 하면
root@debian:/home/oshirowanen# adduser oshirowanen sudo
The user `oshirowanen' is already a member of `sudo'.
root@debian:/home/oshirowanen#
지금까지는 모든 것이 좋아 보입니다.
그런 다음 루트로 로그아웃하고 내 계정을 사용하여 무언가를 설치/제거/검색하려고 하면 작동하지 않고 내가 sudoer가 아니라고 불평합니다.
root@debian:/home/oshirowanen# exit
exit
oshirowanen@debian:~$ sudo aptitude search ice
[sudo] password for oshirowanen:
oshirowanen is not in the sudoers file. This incident will be reported.
oshirowanen@debian:~$
왜 이런 일이 발생합니까?
이것이 내가 그것으로부터 얻는 것입니다visudo
#
# This file MUST be edited with the 'visudo' command as root.
#
# Please consider adding local content in /etc/sudoers.d/ instead of
# directly modifying this file.
#
# See the man page for details on how to write a sudoers file.
#
Defaults env_reset
Defaults mail_badpass
Defaults secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
# Host alias specification
# User alias specification
# Cmnd alias specification
# User privilege specification
root ALL=(ALL:ALL) ALL
# Allow members of group sudo to execute any command
%sudo ALL=(ALL:ALL) ALL
# See sudoers(5) for more information on "#include" directives:
#includedir /etc/sudoers.d
답변1
당신은해야합니다그룹에 자신을 추가하고 다시 로그인하세요.올바른 권한을 얻으려면.
두 개의 셸을 사용하여 확인합니다.
alice $ sudo adduser test
alice $ su - test
alice $ sudo adduser test sudo
test $ sudo ls
test is not in the sudoers file. [...]
test $ exit
alice $ su - test
test $ sudo ls
examples.desktop
명확히 하기 위해 열려 있는 모든 쉘은앞으로그룹에 추가된 사용자에게는 sudo
새로운 권한이 없습니다.
답변2
여기에는 두 가지 다른 작업이 있습니다.
- sudo 사용자 그룹.
- /etc/sudoers 파일.
일부 배포판에서는 sudoers 그룹이 sudo를 통해 모든 것을 실행하도록 sudoers 파일에 구성되어 있습니다.
그룹을 추가하려면 루트로 다음 명령을 실행하여 파일을 편집할 수 있습니다.
visudo
그리고 다음을 추가하거나 주석을 해제하세요.
%sudo ALL=(ALL) ALL
% 기호는 그룹 이름을 의미하고, 첫 번째 "ALL"은 실행할 수 있는 호스트, 두 번째는 가장할 수 있는 사용자, 마지막 "ALL"은 sudo를 통해 실행할 수 있는 명령을 의미합니다.
또한 새 그룹 멤버십을 적용하려면 다시 로그인해야 할 수도 있습니다.
활성 그룹 멤버십을 확인하려면 다음을 실행하세요.
id