我正在编写一个python脚本,根据用户设置更改各种任务的系统范围代理设置。
互联网上发布的各种(shell)解决方案使用gsettings
或gconftool-2
,所以我尝试了一下
我尝试过使用gsettings
os.system("gsettings set org.gnome.system.proxy.socks host '%s'" % host)
os.system("gsettings set org.gnome.system.proxy.socks port %d" % port)
os.system("gsettings set org.gnome.system.proxy mode 'manual'")
(或者,禁用代理)
os.system("gsettings set org.gnome.system.proxy mode 'none'")
以及gconftool-2
os.system("gconftool-2 --type string --set /system/proxy/mode manual")
os.system("gconftool-2 --type boolean --set /system/http_proxy/use_http_proxy true")
os.system("gconftool-2 --type string --set /system/http_proxy/host %s" % host)
os.system("gconftool-2 --type integer --set /system/http_proxy/port %d" % port)
os.system("gconftool-2 --type boolean --set /system/http_proxy/use_same_proxy true")
(禁用:)
os.system("gconftool-2 --type string --set /system/proxy/mode none")
然而,这两者似乎都没有改变。网络设置的“网络代理”选项卡中的设置也没有更改,我的计算机也没有开始/停止连接到代理服务器。我怀疑这可能是因为gsettings
和gconftool-2
都是GNOME工具而Ubuntu使用Unity,但我不确定这一点,因特网不知道任何Unity替代方案......
编辑:
我一直以root身份运行这两个工具和程序,没有任何变化......