Можете ли вы показать мне командную строку для отключения прокси, когда я использую терминал командной строки в Ubuntu?
8 ответов
Как говорится в другом ответе, есть некоторые программы, которые вообще не смотрят на систему, и вам, возможно, придется настраивать их индивидуально. Например, 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
Предположим, вы говорите о типичном программном обеспечении для командной строки и HTTP-прокси:
Большинство инструментов командной строки выбирают это из переменной среды HTTP_PROXY
, поэтому перед запуском команды:
unset HTTP_PROXY
Между программным обеспечением / платформами могут быть некоторые различия, и вам может потребоваться также unset http_proxy
.
Обратите внимание, что многие программы хранят эту информацию в своих собственных конфигурационных файлах и, вероятно, игнорируют окружение, поэтому вам придется обращаться к ним в каждом конкретном случае.
Если вы хотите сменить прокси-сервер для программ с графическим интерфейсом, вы можете добиться определенного успеха, если они используют "системные" настройки прокси-сервера из 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
export http_proxy=
Вы можете проверить, ушли ли они, запустив
echo $http_proxy
Должен вернуть пустую строку
Вы можете установить или снять все переменные одновременно в 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.
Если все вышеперечисленное не работает:
- Зайдите в настройки системы.
- Перейти в сеть.
- Перейдите к network-proxy и, даже если выбран вариант "none", перейдите к "manual" и удалите все сохраненные прокси.
- Применять в масштабе всей системы.
Это сработало для меня!
Вы можете удалить все {http_proxy, https_proxy} и т.д. Из /etc /environment. просто sudo gedit /etc /environment, а затем вручную удалите все прокси и сохраните.
Чтобы отключить все прокси-переменные в одной строке для текущего сеанса:
unset `env | grep proxy | cut -d= -f1`