Відповіді:
http_proxy="http://host:port" apt-get something
повинні працювати.
Якщо вам потрібна автентифікація, спробуйте
http_proxy="http://user:pass@host:port" apt-get something
І якщо ви хочете, щоб це було перманентним, ви, мабуть, слід встановити змінні http_proxy (і ftp_proxy?) У вашому, ~/.bashrc
щоб усі ваші додатки, які підтримують проксі, працюватимуть у майбутньому, наприклад, 'wget'.
у /etc/apt/apt.conf додайте рядок:
Acquire::http::Proxy "http://MYDOMAIN\MYNAME:MYPASS@MY.PROXY.COM:MYPORT"
З: http://ubuntuforums.org/showthread.php?t=96802
(Примітка: повністю викрадений з цієї відповіді на мій аналогічний запитання про SF. Cred to Grizzly )
;
/etc/apt/apt.conf.d/01proxy
Проксі - сервер задається шляхом установки http_proxy
, ftp_proxy
і all_proxy
змінні оточення, або локально (наприклад , в ~/.bashrc
) або на глобальному рівні (наприклад , в /etc/bash.bashrc
). Ці параметри виконуються практично всіма пакетами програмного забезпечення (наприклад, apt-get, wget, curl тощо):
# HTTP proxy without authentification
export http_proxy="http://host:port"
# HTTP proxy with authentification
export http_proxy="http://user:pass@host:port"
Однак встановлення їх таким чином не допомагає при запуску sudo apt-get ...
- і це пов’язано з цим рядком у /etc/sudoers
:
Defaults env_reset
Цей рядок скидає всі змінні середовища під час використання sudo
з міркувань безпеки. Щоб зберегти значення виклику http_proxy
у sudo
виклику, ви можете вказати винятки env_reset
через env_keep
:
# Exception specific to the command apt-get
Defaults!/usr/bin/apt-get env_keep="http_proxy https_proxy ftp_proxy"
# Exception specific to the user joe
Defaults:joe env_keep="http_proxy https_proxy ftp_proxy"
Таким чином, ви apt-get
зможете вшановувати глобальний параметр для http_proxy, замість того, щоб дублювати налаштування apt-get
в якомусь специфічному для архіву конфігураційному файлі.
sudo apt-get ...
для чого завгодно. Тож без цього входу /etc/sudoers
він не вийде.
env_reset
лінія /etc/sudoers
дійсно важлива!
apt-get
і спеціально для змінних , необхідних, замість того щоб сказати «просто видалити рядок».