apt-відстань від проксі на VirtualBox Ubuntu


Відповіді:


8
http_proxy="http://host:port" apt-get something

повинні працювати.

Якщо вам потрібна автентифікація, спробуйте

http_proxy="http://user:pass@host:port" apt-get something

І якщо ви хочете, щоб це було перманентним, ви, мабуть, слід встановити змінні http_proxy (і ftp_proxy?) У вашому, ~/.bashrcщоб усі ваші додатки, які підтримують проксі, працюватимуть у майбутньому, наприклад, 'wget'.


2
ще одне, що слід зазначити, що якщо пароль містить "@", то замініть його на "% 40" (без лапок), інакше це не буде працювати
dotslash

8

у /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
Jackie

4

Проксі - сервер задається шляхом установки 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він не вийде.
mliebelt

Ця env_resetлінія /etc/sudoersдійсно важлива!
Арі

1
@Ari: Так, так і є; Ось чому я показав , як відключити його спеціально для apt-getі спеціально для змінних , необхідних, замість того щоб сказати «просто видалити рядок».
DevSolar

@DevSolar: так, і плюс 1 за це!
Арі
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.