Ubuntu 的 apt-get 代理設置(zhuan)

url: http://qixinglu.com/post/ubuntu_apt-get_proxy_setup.htmlhtml

升級到 Ubuntu10.04 後,發現 apt-get 的代理設置有改變了,在 9.10 之前使用 http_proxy 環境變量就能夠令 apt-get 使用代理了ubuntu

export http_proxy=http://127.0.0.1:8000
sudo apt-get update

而後在 Ubuntu10.04 下就無效了,看來 apt-get 已經被改爲不使用這個環境變量了。網絡

一陣鬱悶後,最後我發如今 首選項 --> 網絡代理 那裏,多了個「System-wide」按鈕(我用的是英文環境,不知道中文被翻譯成怎樣,關閉窗口時也會提示你),在這裏設置後,apt-get 確實能夠使用代理了。ide

可是我依然鄙視這種改進,由於我一般就是偶爾使用代理,更新幾個被牆掉的倉庫而已(如 Dropbox 和 Tor),根本不想使用全局代理,原本用終端就能搞定的事,如今切換代理要點 n 次鼠標,真煩。post

因此我研究了一下,發現那個代理設置修改了兩個文件,一個是 /etc/environment,這個是系統的環境變量,裏面定義了 http_proxy 等代理環境變量。另外一個是 /etc/apt/apt.conf,這個就是 apt 的配置,內容以下ui

Acquire::http::proxy "http://127.0.0.1:8000/";
Acquire::ftp::proxy "ftp://127.0.0.1:8000/";
Acquire::https::proxy "https://127.0.0.1:8000/";

很明顯的代理設置代碼,我看了下 apt-get 的手冊,發現能夠用 -c 選項來指定使用配置文件,也就是複製一份爲 ~/apt_proxy.conf,而後「網絡代理」那裏重置回直接鏈接,之後使用url

sudo apt-get -c ~/apt_proxy.conf update

就能夠使用代理了,apt-get 也有一個 -o 選項,直接跟 apt-get 的設置變量,就不用指定配置文件了,好比翻譯

sudo apt-get -o Acquire::http::proxy="http://127.0.0.1:8000/" update
相關文章
相關標籤/搜索