21

Можете ли вы показать мне командную строку для отключения прокси, когда я использую терминал командной строки в Ubuntu?

8 ответов8

25

Как говорится в другом ответе, есть некоторые программы, которые вообще не смотрят на систему, и вам, возможно, придется настраивать их индивидуально. Например, wget имеет несколько параметров прокси, которые можно использовать для игнорирования или адаптации конфигурации прокси среды во время выполнения. Вот несколько областей, в которых можно настроить прокси-серверы системы.

  • Как выглядит моя система, обратите внимание, что вам придется изменить указанную конфигурацию системы для вашей сетевой среды.

Некоторые системы Linux используют /etc /environment

$ cat /etc/environment 
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games"
http_proxy="http://192.168.1.250:8080/"
ftp_proxy="ftp://192.168.1.250:8080/"
https_proxy="https://192.168.1.250:8080/"  

Там нет единой единой настройки другого использования env

$ env | grep -i proxy
NO_PROXY=localhost,127.0.0.0/8,127.0.1.1
http_proxy=http://192.168.1.250:8080/
FTP_PROXY=ftp://192.168.1.250:8080/
ftp_proxy=ftp://192.168.1.250:8080/
all_proxy=socks://192.168.1.250:8080/
ALL_PROXY=socks://192.168.1.250:8080/
HTTPS_PROXY=https://192.168.1.250:8080/
https_proxy=https://192.168.1.250:8080/
no_proxy=localhost,127.0.0.0/8,127.0.1.1
HTTP_PROXY=http://192.168.1.250:8080/  

Я хотел бы проверить ~/.bashrc, чтобы настройки применялись автоматически при запуске системы.

$ man env
$ man set
$ # The file section near the end of the bash manual.
$ man bash 

FILES
       /bin/bash
              The bash executable
       /etc/profile
              The systemwide initialization file, executed for login shells
       /etc/bash.bashrc
              The systemwide per-interactive-shell startup file
       /etc/bash.bash.logout
              The systemwide login shell cleanup file, executed when  a  login
              shell exits
       ~/.bash_profile
              The personal initialization file, executed for login shells
       ~/.bashrc
              The individual per-interactive-shell startup file
       ~/.bash_logout
              The  individual  login shell cleanup file, executed when a login
              shell exits
       ~/.inputrc
              Individual readline initialization file
14

Предположим, вы говорите о типичном программном обеспечении для командной строки и HTTP-прокси:

Большинство инструментов командной строки выбирают это из переменной среды HTTP_PROXY , поэтому перед запуском команды:

unset HTTP_PROXY

Между программным обеспечением / платформами могут быть некоторые различия, и вам может потребоваться также unset http_proxy .

Обратите внимание, что многие программы хранят эту информацию в своих собственных конфигурационных файлах и, вероятно, игнорируют окружение, поэтому вам придется обращаться к ним в каждом конкретном случае.

3

Если вы хотите сменить прокси-сервер для программ с графическим интерфейсом, вы можете добиться определенного успеха, если они используют "системные" настройки прокси-сервера из Gnome. Это настройки прокси, которые можно установить с панели управления.

Вы можете посмотреть и затем изменить текущие настройки с помощью gconftool:

$ gconftool-2 -a /system/http_proxy
  ignore_hosts = [localhost,127.0.0.0/8,*.local]
  authentication_user =
  authentication_password =
  use_authentication = false
  use_http_proxy = true
  port = 8080
  host = http://myproxy.mydomain.org/

Чтобы отключить прокси - установите для use_http_proxy значение false:

$ gconftool-2 -t bool -s /system/http_proxy/use_http_proxy false

Вы можете проверить результаты, используя строку -a сверху. В качестве альтернативы, чтобы установить новый прокси:

$ gconftool-2 -t string -s /system/http_proxy/host "http://newproxy.mydomain.org/"
$ gconftool-2 -t int -s /system/http_proxy/port 8088
3
export http_proxy=

Вы можете проверить, ушли ли они, запустив

echo $http_proxy

Должен вернуть пустую строку

2

Вы можете установить или снять все переменные одновременно в bash:

$ export {http,https,ftp}_proxy="http://proxy-server:port"
$ unset {http,https,ftp}_proxy

$ export {HTTP,HTTPS,FTP}_PROXY="http://proxy-server:port"
$ unset {HTTP,HTTPS,FTP}_PROXY

Вы также можете добавить ярлык к вам ~/.bashrc:

# Set Proxy
function setproxy() {
    export {http,https,ftp}_proxy="http://proxy-server:port"
    export {HTTP,HTTPS,FTP}_PROXY="http://proxy-server:port"
}

# Unset Proxy
function unsetproxy() {
    unset {http,https,ftp}_proxy
    unset {HTTP,HTTPS,FTP}_PROXY
}

Не забудьте перезагрузить .bashrc:

$ . ~/.bashrc

или же

$ source ~/.bashrc

Больше подробностей в [S] Hell Hacks.

1

Если все вышеперечисленное не работает:

  1. Зайдите в настройки системы.
  2. Перейти в сеть.
  3. Перейдите к network-proxy и, даже если выбран вариант "none", перейдите к "manual" и удалите все сохраненные прокси.
  4. Применять в масштабе всей системы.

Это сработало для меня!

0

Вы можете удалить все {http_proxy, https_proxy} и т.д. Из /etc /environment. просто sudo gedit /etc /environment, а затем вручную удалите все прокси и сохраните.

0

Чтобы отключить все прокси-переменные в одной строке для текущего сеанса:

unset `env | grep proxy | cut -d= -f1`

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .