sudo 잘 아시는 분 계신가요?

nomail의 이미지

sudo 매뉴얼을 보는데 실제 실행결과가 달라서 질문 좀 드릴려고 합니다.

/etc/sudoers 파일을 아래처럼 설정했습니다.

Defaults env_reset, !setenv

sudo 매뉴얼에는 setenv 옵션을 다음처럼 설명하고 있고요.

Allow the user to disable the env_reset option from the command line via the ‑E option. 

sudoers에서 setenv 설정을 disable로 한거니 -E 옵션이 동작을 안해야 정상인데.. 결과는 setenv 설정된 걸로 나옵니다.

sudo bash -c 'echo $HOME'
/root
 
sudo -E bash -c 'echo $HOME'
/home/userdir

왜 그런걸까요? 제가 sudo 설명을 잘못 이해한건가요?

Prentice의 이미지

저도 잘 알지는 못합니다만... !setenv에서 앞의 느낌표가 있어서 부정형이 되는 것으로 짐작이 갑니다.

그냥 setenv로 하시면 -E 옵션을 써서 사용자가 env_reset을 끌 수도 있는 것이라고 보면, !setenv를 쓰면 사용자가 -E 옵션을 써도 사용자가 env_reset을 끌 수 없는 게 혹시 아닐까요?

헛다리를 짚은 것이면 죄송합니다.

nomail의 이미지

네.. 혹시나 해서 둘 다 해봤는데 결과는 똑같습니다.
아무래도 제가 설정을 잘못한거 같아서 매뉴얼 다시 읽어볼려구요.. 흑흑.

Sdsf3qUr의 이미지

편집은 visudo로 하셨을 겁니다.