Как запустить & ldquo; sudo apt-get update & rdquo; через прокси в командной строке?

В моем офисе я хочу обновить и загрузить через (wget), и здесь они используют прокси?

Как я могу сделать это с помощью командной строки?

80
задан 15 October 2010 в 17:57

8 ответов

Используйте это.

ubuntu@ubuntu:~$ cat /etc/apt/apt.conf
Acquire::http::Proxy "http://Username:Password@proxy.foo.bar.edu.au:8080";

Это то, что я использую. Работает отлично.

Apt также позволяет размещать отдельные настройки в файлах под /etc/apt/apt.conf.d/, так что это имеет тот же эффект, что и выше, но может быть проще поддерживать, если у вас есть другие строки в файле .conf:

ubuntu@ubuntu:~$ cat /etc/apt/apt.conf.d/05proxy
Acquire::http::Proxy "http://Username:Password@proxy.foo.bar.edu.au:8080";
0
ответ дан 15 October 2010 в 17:57

В некоторых выпусках sudo конфигурируется таким образом, что все переменные окружения очищаются при запуске команды. Чтобы сохранить значение для вашего http_proxy и исправить это, вам нужно отредактировать / etc / sudoers, запустить:

visudo

Затем найдите строку, которая гласит:

Defaults env_reset 

и добавьте после него:

Defaults env_keep = "http_proxy ftp_proxy" 

Все начнет работать как положено.

Спасибо kdogksu на форумах Ubuntu за поиск решения для этого.

Чтобы не только исправить apt-get, но и графически X11 использует, например, synaptic, mintintall, ...), следующая строка в /etc/sudoers должна выполнить работу:

Defaults env_keep = "http_proxy https_proxy ftp_proxy DISPLAY XAUTHORITY"
0
ответ дан 15 October 2010 в 17:57

То, что мне помогло, было:

sudo http_proxy=http://yourserver apt-get update

Что немного странно, потому что простой экспорт http_proxy и затем запуск sudo echo $ http_proxy послушно распечатали экспортированное значение

0
ответ дан 15 October 2010 в 17:57
export http_proxy=http://proxyusername:proxypassword@proxyaddress:proxyport
sudo apt-get update

Экспорт не должен нуждаться в sudo и, если ваш прокси-сервер анонимный, просто откажитесь от proxyusername:proxypassword@.

0
ответ дан 15 October 2010 в 17:57

Если это временная конфигурация , вы можете попробовать это: sudo bash -c 'http_proxy = "http: // < proxy_host>: < proxy_port> /" apt-get update' [ 111]

Это необходимо, потому что переменная окружения должна быть определена для учетной записи «root». Работа и экспорт раньше не должны работать.

Для постоянной конфигурации вам придется изменить системный файл. Это уже описано в следующем ответе о Как проверить, действительно ли используется сетевой прокси? .

0
ответ дан 15 October 2010 в 17:57

Ubuntu невероятно враждебен к аутентификации прокси. Я использую ноутбук Ubuntu на работе, и количество поломок невероятно.

Synaptic, Apt, Firefox, Chromium и т. Д. Используют разные методы для указания прокси, и негде безопасно указать учетные данные.

Некоторые ошибки по теме: https://bugs.edge.launchpad.net/ubuntu/+source/msttcorefonts/+bug/220070

https: / /bugs.edge.launchpad.net/ubuntu/+source/apt-cacher/+bug/198138

https://bugs.edge.launchpad.net/ubuntu/+source / apt / + bug / 433827

https://bugs.edge.launchpad.net/ubuntu/+source/b43-fwcutter/+bug/683630

1110 Предложение Оли использовать экспорт - единственный неопределенно безопасный способ сделать это. Иногда также возможно «выдумать» поддержку прокси, если прокси-сервер использует вторичную аутентификацию, чтобы минимизировать нагрузку на основные серверы аутентификации (скажем, возможно, Active Directory). Именно здесь первое прокси-соединение аутентифицируется прокси-сервером против AD, затем в течение заданного периода времени (обычно 5 минут) все остальные соединения «доверяются» этому пользователю. Таким образом, вы можете открыть Firefox, просматривать Интернет (где угодно), затем попробовать свою утилиту (wget, synaptic и т. Д.), Указав прокси-сервер, но оставив имя пользователя пустым.

Ubuntu обычно враждебен к любой корпоративной среде просто потому, что позволяет так легко читать пароли. Seahorse - главный преступник, но Network Manager также шокирует - подключайтесь к любой сети с аутентификацией PEAP, и вы только что сохранили свой пароль в апплете, чтобы каждый мог увидеть, кто может одолжить ваш ноутбук. По всей видимости, совместное использование ноутбуков считается кощунством на земле Linux, так как разработчики Seahorse отвергли заявления о ненадежности. После этого у меня не хватило души связаться с разработчиками сетевого менеджера.

0
ответ дан 15 October 2010 в 17:57

Вы пытались редактировать /etc/apt/apt.conf? Я использую это, чтобы использовать apt позади нашего корпоративного прокси.

Acquire::http::proxy "http://user:password@host:port/";

Я полагаю, что apt использует это значение, если в вашей среде оболочки не определено $ http_proxy (то есть $ http_proxy имеет преимущество).

0
ответ дан 15 October 2010 в 17:57

Если Вы хотите бежать, “sudo Кв. - получают update” через доверенность в commandline, используют ниже команды,

sudo apt-get -o Acquire::http::proxy="http://user:password@host:port/" update;
1
ответ дан 22 November 2019 в 23:12

Другие вопросы по тегам:

Похожие вопросы: