プロキシ設定はどこにも見当たりません。ターミナルやgconftools
から設定しなければならないのでしょうか、それとも何かGUIがあるのでしょうか?
Ubuntu StudioはXubuntuと同様にXFCEデスクトップ環境を使用していますが、システム全体のプロキシを設定するグラフィカルな設定ツールは含まれていません(Ubuntuのデフォルトのデスクトップ環境であるUnityとは異なります)。
etc/environmentファイルを
gksudo leafpad` (またはお好みのエディタ)で開きます。このファイルには、起動時に初期化されるシステム全体の変数が保存されています。
以下の行を追加し、適切に修正してください。大文字と小文字の両方で複製する必要があります。(残念なことに)プログラムによってはどちらか一方しか探さないものもあるからです:
<pre>; http_proxy=http://myproxy.server.com:8080/ https_proxy=http://myproxy.server.com:8080/ ftp_proxy=http://myproxy.server.com:8080/ no_proxy="localhost,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="localhost,127.0.0.1,localaddress,.localdomain.com"; </pre>;
Rhythmboxのようないくつかの新しいGTK3プログラムは、上で設定した環境変数を無視し、代わりにGnomeの設定に依存します。Rhythmboxのような新しいGTK3プログラムの中には、上で設定した環境変数を無視し、代わりに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
apt-get
とUpdate Managerのプロキシを設定する####。これらのプログラムは環境変数にも従わない。etc/apt/apt.conf.d/に
95proxies` というファイルを作成し、以下を含めます:
以下のように記述します; Acquire::http::proxy "http://myproxy.server.com:8080/"; Acquire::ftp::proxy "ftp://myproxy.server.com:8080/"; Acquire::https::proxy "https://myproxy.server.com:8080/"; </pre>;
最後に、ログアウトして再起動し、変更が有効になったことを確認します。
ソース1, 2, 3.プロキシを素早くオン/オフするスクリプトを含む追加ヘルプについては、特に1を参照してください。
**免責事項:***:このスクリプトを実行する前に、/etc/environment
ファイルには '$PATH...'という1行だけを記述し、それ以外には何も記述しないことが重要です。これらのスクリプトは上記のようにプロキシを設定したり解除したりしますが、 /etc/environment
ファイルと/etc/apt/apt.conf.d/95proxy
ファイルを変更するために、 ファイルの切り捨てとファイルの追加に依存しています。ですから、以下のことを確認してください:
/etc/environment
には '$PATH:...' という1行しかありません。それ以外は何もない。
/etc/apt/apt.conf.d/95proxy
ファイルが存在しないか、重要なものがない。
重要なものがない。
というわけで、プロキシのオンオフを自動化したい場合は、proxyon.sh
と proxyoff.sh
という2つの実行可能なシェルスクリプトを作ればよい:
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 <proxy_ip> <proxy_port>\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}
と入力するだけです。{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
これですべてのプロキシが解除されます。ここでログアウトし、再度ログインして通常モードに切り替えます。
私はそれに対処するためのいくつかの機能を持っています。 このように呼び出します。
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:[email protected]: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:[email protected]: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!"
}