sudo运行时默认会重置环境变量为安全的环境变量,因此当实用sudo执行指令时会提示找不到$xxx环境变量。
解决方法:
$ sudo visudo //编辑sudo配置
找到类似下面的配置:
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"
将第一行的 “env_reset” 前面加感叹号,改为:“!env_reset“ ,退出保存即可,既“关闭环境变量重置”。不需要重启机器。