![HGRCPATH는 /etc/sudoers에 저장되지만 hg?에서는 무시됩니다.](https://linux55.com/image/49561/HGRCPATH%EB%8A%94%20%2Fetc%2Fsudoers%EC%97%90%20%EC%A0%80%EC%9E%A5%EB%90%98%EC%A7%80%EB%A7%8C%20hg%3F%EC%97%90%EC%84%9C%EB%8A%94%20%EB%AC%B4%EC%8B%9C%EB%90%A9%EB%8B%88%EB%8B%A4..png)
지시사항을 따르려고 노력 중이에요여기"sudo 및 여러 사용자"에서. 나는 이것을 충분히 올바르게 수정할 수 있었다고 생각합니다( /etc/sudoers
기본 섹션의 시작 부분에 추가한 다음 sudo에서 구문 분석 오류가 발생했기 때문에 잘라냄). 왜냐하면 다음을 얻었기 때문입니다.Defaults :me env_keep += "HGRCPATH"
:me
[me /]$ su
Password:
[root /]$ echo $HGRCPATH
/home/me/.hgrc
그러나 실제로 사용하려고 하면 다음과 hg
같은 문제가 발생합니다.
[me /]$ sudo hg commit -m "Initial check-in."
abort: no username supplied (see "hg help config")
물론:
[me /]$ sudo hg debugconfig --debug | grep read
read config from: /usr/etc/mercurial/hgrc
read config from: /etc/mercurial/hgrc
read config from: /etc/mercurial/hgrc.d/mergetools.rc
read config from: /root/.hgrc
hg
$HGRCPATH가 무시되고 /root/.hgrc
대신 찾는 것처럼 보이는 이유는 무엇입니까 /home/me/.hgrc
?
고쳐 쓰다
주석 처리되지 않은 줄은 다음과 같습니다 /etc/sudoers
.
$ sudo cat /etc/sudoers | grep '^[^#]'
Defaults env_keep += "HGRCPATH"
Defaults requiretty
Defaults !visiblepw
Defaults always_set_home
Defaults env_reset
Defaults env_keep = "COLORS DISPLAY HOSTNAME HISTSIZE INPUTRC KDEDIR LS_COLORS"
Defaults env_keep += "MAIL PS1 PS2 QTDIR USERNAME LANG LC_ADDRESS LC_CTYPE"
Defaults env_keep += "LC_COLLATE LC_IDENTIFICATION LC_MEASUREMENT LC_MESSAGES"
Defaults env_keep += "LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER LC_TELEPHONE"
Defaults env_keep += "LC_TIME LC_ALL LANGUAGE LINGUAS _XKB_CHARSET XAUTHORITY"
Defaults secure_path = /sbin:/bin:/usr/sbin:/usr/bin
root ALL=(ALL) ALL
me ALL=(ALL) ALL
답변1
Defaults env_keep += "HGRCPATH" Defaults env_keep = "COLORS DISPLAY HOSTNAME HISTSIZE INPUTRC KDEDIR LS_COLORS"
두 번째 줄은 재설정됩니다 env_keep
. 줄이 걸리 +=
거나 이동하기 =
전의 줄입니다 +=
.