我剛剛從 Ubuntu 12.04 更新到 13.10
在 12.04 中,我曾經在 .bashrc 中設定 http_proxy 變量,然後使用 apt-get 如下
sudo -E apt-get update
sudo 中的 -E 選項用於使用戶環境變數可供 sudo 使用,而 apt-get 將取得 http_proxy 變數。
由於某種原因,此方法在 13.10 中不起作用。我反覆得到407 Proxy authentication Required
。
有人知道原因嗎?我該如何解決這個問題?
筆記:
我知道啟用 apt-get 代理的另一種方法是更改 apt.conf 中的設定。我不想這樣做,因為這將創建一個系統範圍的設定。另外,當我在家使用系統時(沒有代理),我將再次必須去更改 apt.conf。
在上面的解決方案中,我只需在 sudo 中刪除“-E”選項,apt-get 將嘗試直接連接到互聯網。
答案1
您應該在文件中向代理提供身份驗證參數,/home/$USER/.bashrc
格式為export http_proxy=http://username:password@host:password/
.
如果您的密碼中包含特殊字元(非字母數字字元),如、"
、'
等,則應使用 HTML 程式碼取代這些字元。@
:
例如,如果您的密碼是p@ssw0rd
,則應鍵入文件p%40ssw0rd
中的密碼/home/$USER/.bashrc
,然後將這些變數作為 匯出到目前會話source /home/$USER/.bashrc
。 (%40 是 的 HTML 程式碼@
。)