通过此命令的精确返回,我知道我正在使用代理(tor):
sudo proxychains sh -c 'apt update'
但是,当我分两步执行此操作时,命令的返回不像以前那么精确:proxychains xfce4-terminal
等待终端窗口出现,然后输入:
sudo apt update
为什么?另外,如果我卸载 Tor,2 步方法仍然有效;它不应该!
答案1
在上面的命令中,您使用的是proxychains
用户sudo
。但是,当您调用时,您将生成一个不再使用代理的proxychains xfce4-terminal
新会话。sudo $blah
本质上,您正在处理用户权限错误。除非在配置中指定(在) sudo
,否则用户环境不会从继承。没有环境变量来维护隧道。$USER
Defaults_*
/etc/sudoers
proxychains
为了进一步测试,你可以尝试
# Run this in a terminal
proxychains xfce4-terminal
curl ipinfo.io
# Run this in a sudo terminal
sudo proxychains xfce4-terminal
curl ipinfo.io
上述命令将返回相同的(代理)结果,但是这个不会
proxychains xfce4-terminal
sudo curl ipinfo.io