Я только что обновился с Ubuntu 12.04 до 13.10
В версии 12.04 я настраивал переменную http_proxy в .bashrc, а затем использовал apt-get следующим образом:
sudo -E apt-get update
Опция -E в sudo, используемая для того, чтобы сделать переменные среды пользователя доступными для sudo, а apt-get будет использовать переменную http_proxy.
По какой-то причине этот метод не работает в 13.10. Я постоянно получаю 407 Proxy authentication Required
.
Кто-нибудь знает причину? Как мне это решить?
Примечание:
Я знаю, что другой способ включить прокси для apt-get — изменить настройки в apt.conf. Я не хочу этого делать, так как это создаст общесистемные настройки. Кроме того, когда я использую систему дома (где нет прокси), мне снова придется идти и изменять apt.conf.
В приведенном выше решении мне просто нужно будет убрать опцию «-E» в sudo, и 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-код для @
.)