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 )

squillman
источник
Линия должна заканчиваться на;
Verma
Мое имя файла было другим, но это то, что сработало для меня/etc/apt/apt.conf.d/01proxy
Джеки
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_resetvia 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в каком-то непонятном специфичном для apt файле конфигурации.

DevSolar
источник
Это реальный ответ, на мой взгляд, потому что вы будете все время использовать sudo apt-get ...для чего-либо. Так что без этой записи /etc/sudoers, это не будет работать.
mliebelt
Эта env_resetлиния /etc/sudoersдействительно важна!
Ари
1
@ Ари: Да, это так; Вот почему я показал, как отключить его специально для apt-getи, в частности, для необходимых переменных, вместо того, чтобы сказать «просто удалить строку».
DevSolar
@DevSolar: да, и плюс 1 за это!
Ари