如何通过命令行设置根代理设置?

如何通过命令行设置根代理设置?

我正在使用 Fabric 部署项目并遇到一个问题:

fabric 目前(据我所知)无法为其 sudo 命令指定选项,因此我无法使用sudo -E本地用户的代理设置。

我该如何设置 root 的代理设置?

这需要通过命令行进行,因为我在没有 GUI 的服务器机上工作。

答案1

我不知道这是否可以帮助你,但我使用tsocks袜子代理,如Tor

安装最新版本的 tor 和 tsockssudo apt-get install tor tsocks

编辑 tsocks 配置文件sudo gedit /etc/tsocks.conf,最后几行应该是:

server = 127.0.0.1
# Server type defaults to 4 so we need to specify it as 5 for this one
server_type = 5
# The port defaults to 1080 but I've stated it here for clarity 
server_port = 9050

并使用 tor 代理执行任何命令,tsocks sudo apt-get update例如。

答案2

仅供参考。Fabric完全允许该sudo命令。从文档

fabric.operations.sudo(command, shell=True, pty=True, combine_stderr=None, user=None, quiet=False, warn_only=False, stdout=None, stderr=None, group=None)

这是来自文档的示例。

sudo("~/install_script.py")
sudo("mkdir /var/www/new_docroot", user="www-data")
sudo("ls /home/jdoe", user=1001)
result = sudo("ls /tmp/")
with settings(sudo_user='mysql'):
    sudo("whoami") # prints 'mysql'

顺便说一句,很高兴您使用 Fabric。它是一个很好的部署工具。

相关内容