여러 별칭을 만들어 셸에 소스로 제공했습니다.
alias apti="apt-fast install -y"
alias aptr="apt-fast remove -y"
alias aptp="apt-fast purge -y"
alias apts="aptitude search"
alias aptu="sudo dpkg --configure -a; apti -f; apt-fast update; apt-fast upgrade -y; apt-fast full-upgrade -y; apt-fast autoremove -y"
그런 다음 /etc/sudoers에 예외를 추가합니다.
#
# 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:/snap/bin"
# Host alias specification
# User alias specification
# Cmnd alias specification
# User privilege specification
root ALL=(ALL:ALL) ALL
# Members of the admin group may gain root privileges
%admin 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
Cmnd_Alias APT=/usr/local/bin/apt
Cmnd_Alias DPKG=/usr/bin/dpkg
Cmnd_Alias APTGET=/usr/bin/apt-get
Cmnd_Alias APTITUDE=/usr/bin/aptitude
Cmnd_Alias APTFAST=/usr/sbin/apt-fast
Cmnd_Alias PM_SUSPEND=/usr/sbin/pm-suspend
myuser ALL=(ALL:ALL) NOPASSWD: APT, DPKG, APTGET, APTITUDE, PM_SUSPEND, APTFAST
수년 동안 잘 작동해 왔습니다. 하지만 몇 주 전에(리눅스 민트 업데이트?) 오류가 발생하기 시작했습니다.
$ apti iridium-browser
sudo: sorry, you are not allowed to set the following environment variables: DEBUG, LCK_FILE, DOWNLOADBEFORE, _APTMGR, APTCACHE, DLDIR, DLLIST, LISTDIR, _MAXNUM, _MAXCONPERSRV, _SPLITCON, _MINSPLITSZ, _PIECEALGO, aptfast_prefix, APT_FAST_TIMEOUT
/etc/sudoers.d에는 README와 mintupdate라는 두 개의 파일이 있습니다. 나는 그 중 어느 것도 편집하지 않았습니다. 주석 처리되지 않은 유일한 줄은 다음과 같습니다.
Cmnd_Alias UPDATE = /usr/lib/linuxmint/mintUpdate/checkAPT.py
ALL ALL = NOPASSWD:UPDATE
내가 아는 한, 나열된 환경 변수 중 어떤 것도 설정하지 않았습니다. 내가 뭘 잘못했나요?
답변1
라자루스 프로그램에서 "sudo 명령"을 프로세스로 실행할 때도 이 오류 메시지가 표시되지만 "/usr/bin/sudo 명령"으로 변경하면 오류 없이 잘 작동하므로 이 경우에는 오류를 일으키는 "sudo" 경로가 누락되었습니다.