如何在Xubuntu,Lubuntu或Ubuntu Studio中设置系统范围的代理服务器?

我无法在任何地方找到代理设置。 我是否必须通过终端设置它,通过gconftools或者是否存在一些GUI?

必须通过环境变量设置Ubuntu Studio,Xubuntu和XFCE中的系统范围代理

与Xubuntu一样,Ubuntu Studio使用XFCE桌面环境,该环境不包含图形设置工具来设置系统范围的代理( 与默认的Ubuntu桌面环境Unity不同 )。

1.为大多数程序设置代理/代理

  • 使用gksudo leafpad (或您喜欢的编辑器)打开/etc/environment文件。 此文件存储引导时初始化的系统范围变量。
  • 添加以下行,进行适当修改。 您必须同时复制大写和小写,因为(不幸的是)某些程序只查找其中一个:

     HTTP_PROXY = HTTP://myproxy.server.com:8080 /
     https_proxy = HTTP://myproxy.server.com:8080 /
     ftp_proxy这= HTTP://myproxy.server.com:8080 /
     NO_PROXY = “本地主机,127.0.0.1将localAddress,.localdomain.com”
     HTTP_PROXY = HTTP://myproxy.server.com:8080 /
     HTTPS_PROXY = HTTP://myproxy.server.com:8080 /
     FTP_PROXY = HTTP://myproxy.server.com:8080 /
     NO_PROXY = “本地主机,127.0.0.1将localAddress,.localdomain.com”
    

2.然后为Rhythmbox等GTK3程序设置代理:

一些较新的GTK3程序(如Rhythmbox)会忽略上面设置的环境变量,而是依赖Gnome设置。 要确保它们已被覆盖,请打开终端并逐行粘贴以下内容,并根据需要进行修改:

 gsettings set org.gnome.system.proxy mode 'manual' gsettings set org.gnome.system.proxy.http host 'myproxy.server.com' gsettings set org.gnome.system.proxy.http port 8080 

3.最后,为apt-get和Update Manager设置代理

  • 这些程序也不会遵守环境变量。 在/etc/apt/apt.conf.d/创建一个名为95proxies/etc/apt/apt.conf.d/ ,并包含以下内容:

    获取:: http :: proxy“http://myproxy.server.com:8080/”;
    获取:: ftp :: proxy“ftp://myproxy.server.com:8080/”;
    获取:: https :: proxy“https://myproxy.server.com:8080/”;
    

最后,注销并重新启动以确保更改生效。


资料来源: 1,2,3 。 有关其他帮助,请参阅1,包括快速打开/关闭代理的脚本。


打开/关闭代理服务器的脚本

免责声明::在继续之前,请注意我在Lubuntu 14.04上尝试了这一点,重要的是在运行上述脚本之前,文件/etc/environment应该只有一行,即’$ PATH …’并且那里应该是文件中的其他内容,否则您可能需要修改脚本的代码。 这些脚本如上所述设置和取消设置代理,但它们依赖于文件截断和文件追加来更改/etc/environment/etc/apt/apt.conf.d/95proxies文件。 所以请确保:

1) /etc/environment只包含一行,即’$ PATH:…’。 没有别的。

2)文件/etc/apt/apt.conf.d/95proxies不存在或者没有任何重要内容。

所以! 如果要在不必键入分配的情况下自动执行打开和关闭代理的过程。 您可以将两个可执行shell脚本proxyon.shproxyoff.sh设为:

proxyon.sh:

 if [ $(id -u) -ne 0 ]; then echo "This script must be run as root"; exit 1; fi if [ $# -eq 2 ] then gsettings set org.gnome.system.proxy mode 'manual' ; gsettings set org.gnome.system.proxy.http host '$1'; gsettings set org.gnome.system.proxy.http port $2; grep PATH /etc/environment > lol.t; printf \ "http_proxy=http://$1:$2/\n\ https_proxy=http://$1:$2/\n\ ftp_proxy=http://$1:$2/\n\ no_proxy=\"localhost,127.0.0.1,localaddress,.localdomain.com\"\n\ HTTP_PROXY=http://$1:$2/\n\ HTTPS_PROXY=http://$1:$2/\n\ FTP_PROXY=http://$1:$2/\n\ NO_PROXY=\"localhost,127.0.0.1,localaddress,.localdomain.com\"\n" >> lol.t; cat lol.t > /etc/environment; printf \ "Acquire::http::proxy \"http://$1:$2/\";\n\ Acquire::ftp::proxy \"ftp://$1:$2/\";\n\ Acquire::https::proxy \"https://$1:$2/\";\n" > /etc/apt/apt.conf.d/95proxies; rm -rf lol.t; else printf "Usage $0  \n"; fi 

proxyoff.sh

 if [ $(id -u) -ne 0 ]; then echo "This script must be run as root"; exit 1; fi gsettings set org.gnome.system.proxy mode 'none' ; grep PATH /etc/environment > lol.t; cat lol.t > /etc/environment; printf "" > /etc/apt/apt.conf.d/95proxies; rm -rf lol.t; 

使用方法 :制作完这些脚本后,将它们设为可执行文件,即可将它们保存在您喜欢的任何位置。 要打开代理,您只需转到包含’proxyon.sh’脚本的目录,然后您需要键入sudo ./proxyon.sh {host} {port} 。 举个例子考虑一下:

  $ sudo ./proxyon.sh 10.2.20.17 8080 OR $ sudo ./proxyon.sh myproxy.server.com 8080 

其中’10 .2.20.17’是代理服务器的IP – 您也可以输入类似myproxy.server.com的内容 – 而’8080’是端口。 之后,只需注销并登录您的帐户,以确保一切都已设置。 您可以开始使用互联网或其他任何东西。 当你想关闭代理时,转到包含’proxyoff.sh’的目录并输入:

  $ sudo ./proxyoff.sh 

这将取消设置所有代理。 现在注销并再次登录以切换到正常模式。

有一个名为UbProxy的图形工具,它通过图形界面(GUI)设置整个系统代理。 对我来说唯一的问题是,我必须注销我的用户并再次登录才能加载配置。 使用起来非常简单。 https://code.google.com/p/ubproxy/

我有一些处理它的function。 像这样打电话给他们:

 myProxyOn 

https://gist.github.com/fernando-basso/6352040

 #!/usr/bin/env bash # gsettings list-recursively org.gnome.system.proxy # Change de ip address and port number accordingly. function myProxyOn() { gsettings set org.gnome.system.proxy mode 'manual' # ' manual / nome / automatic ' gsettings set org.gnome.system.proxy.http host '10.0.0.1' gsettings set org.gnome.system.proxy.http port 8080 gsettings set org.gnome.system.proxy.https host '10.0.0.1' gsettings set org.gnome.system.proxy.https port 8080 gsettings set org.gnome.system.proxy.ftp host '10.0.0.1' gsettings set org.gnome.system.proxy.ftp port 8080 echo "Configuração do 'System Proxy' settada para 'manual', com host 10.0.0.1, port 8080." } function myProxyOff() { gsettings set org.gnome.system.proxy mode 'none' # ' manual / nome / automatic ' echo "Proxy cofigurado para 'none'." } function proxyOn() { # {{{ #echo -n 'Username: ' #read -e username #echo -n 'Password: ' #read -es password #echo '' echo 'Setting variable "http_proxy"...' #export http_proxy="http://$username:$password@172.17.0.1:8080/" export http_proxy="http://10.0.0.1:8080/" echo 'Setting variable "https_proxy..."' export https_proxy="https://10.0.0.1:8080/" echo 'Setting variable "ftp_proxy"...' #export ftp_proxy="http://$username:$password@172.17.0.1:8080/" export ftp_proxy="ftp://10.0.0.1:8080/" echo 'Done!' } function proxyOff() { unset HTTP_PROXY unset http_proxy unset FTP_proxy unset ftp_proxy echo -e "\nProxy environment variables removed!" } 

没有必要通过/etc/apt/apt.conf.d中的proxy95文件重新启动整个系统进行apt-get调整

  • 它只是在文件写入后立即工作
  • 文件消失后立即消失。

考虑脚本以通过将文件重命名为* .bak来启用和禁用文件,以便在必要时快速切换代理。

转到Dash Home类型系统设置,单击系统设置然后再进入network.Proxy设置将对您可见。 单击系统范围。 它可以像系统代理设置一样工作。