当我对sudo使用任何命令时,环境变量都不存在.例如,在设置HTTP_代理之后,命令wget
在没有sudo
的情况下可以正常工作.然而,如果我输入sudo wget
,它会说它不能绕过代理设置.
当我对sudo使用任何命令时,环境变量都不存在.例如,在设置HTTP_代理之后,命令wget
在没有sudo
的情况下可以正常工作.然而,如果我输入sudo wget
,它会说它不能绕过代理设置.
诀窍是通过sudo visudo
命令将环境变量添加到sudoers
文件中,并添加以下行:
Defaults env_keep += "ftp_proxy http_proxy https_proxy no_proxy"
摘自ArchLinux wiki页.
对于Ubuntu 14,当它返回多变量行的错误时,需要在单独的行中指定:
Defaults env_keep += "http_proxy"
Defaults env_keep += "https_proxy"
Defaults env_keep += "HTTP_PROXY"
Defaults env_keep += "HTTPS_PROXY"