xmodmap
только делает что-либо, после того как Вы уже находитесь на X сессиях (потому что они должны выполнить вызовы к X-серверу), и ни один ~/.bashrc
(ни ~/.profile
) гарантируйте, что, и при этом они не будут автоматически выполняться, после того как Вы вводите X сессий. Необходимо поместить его в конфигурацию запуска.
Если Вы используете startx
или xinit
для запуска X вставьте это ~/.xinitrc
. Если Вы используете что-то еще, смотрите на Вашу документацию для обнаружения, куда необходимо поместить приложения запуска.
Насколько я понимаю, настройка прокси-серверов в масштабе всей системы через этот графический интерфейс делает три вещи:
/etc/environment
. /etc/apt/apt.conf
. 1 и 3 вступают в силу немедленно. /etc/environment
анализируется при входе в систему, поэтому для того, чтобы это вступило в силу, необходимо выйти из системы и войти в нее. (Обратите внимание, что это правильный вход в систему, а не просто запуск оболочки для входа).
Следующий скрипт должен быть эквивалентен (предполагая http/https прокси):
#! /bin/bash
HTTP_PROXY_HOST=proxy.example.com
HTTP_PROXY_PORT=3128
HTTPS_PROXY_HOST=proxy.example.com
HTTPS_PROXY_PORT=3128
gsettings set org.gnome.system.proxy mode manual
gsettings set org.gnome.system.proxy.http host "$HTTP_PROXY_HOST"
gsettings set org.gnome.system.proxy.http port "$HTTP_PROXY_PORT"
gsettings set org.gnome.system.proxy.https host "$HTTPS_PROXY_HOST"
gsettings set org.gnome.system.proxy.https port "$HTTPS_PROXY_PORT"
sudo sed -i.bak '/http[s]::proxy/Id' /etc/apt/apt.conf
sudo tee -a /etc/apt/apt.conf <<EOF
Acquire::http::proxy "http://$HTTP_PROXY_HOST:$HTTP_PROXY_PORT/";
Acquire::https::proxy "http://$HTTPS_PROXY_HOST:$HTTPS_PROXY_PORT/";
EOF
sudo sed -i.bak '/http[s]_proxy/Id' /etc/environment
sudo tee -a /etc/environment <<EOF
http_proxy="http://$HTTP_PROXY_HOST:$HTTP_PROXY_PORT/"
https_proxy="http://$HTTPS_PROXY_HOST:$HTTPS_PROXY_PORT/"
EOF
Несмотря на то, что он требует повторного входа в систему, чтобы PAM применял /etc/environment
везде, в текущей оболочке командной строки вы всё ещё можете извлечь значения в этом файле:
export http_proxy=$(pam_getenv http_proxy)
Я сделал инструмент ProxyMan, чтобы упростить всю задачу. Вы можете скачать его по этой ссылке .
Кроме того, вы можете взглянуть на код, если вас больше интересует работа серверной части. Загрузите zip-файл, извлеките их, перейдите к местоположению извлеченных файлов в терминале, и следующие команды помогут вам:
Думаю, это поможет избежать головной боли:
Отличное руководство, работающее на python. Установка простых и аутентифицированных настроек прокси в Ubuntu 12.04 / 12.10 / 13.04 / 13.10 / 14.04 / 14.10 и выше 100% рабочая.
Решение 1 В системе должен быть установлен "python". С интерпретатором, выполняющим команду: Команда: "sudo python setproxy.py [Proxy_Server] [proxy_port] [PROXY_USER] [proxy_password] "
Видео: https://www.youtube.com/watch?v=eBtzKa-dvJg
[ Proxy_Server ] : proxy.test.ts
[ Proxy_port ] : 8080
[ PROXY_USER ] : domainuser
[ Proxy_password ] : " the_password "
Решение 2. Команды :
"Sudo apt- get install python- support"
"Sudo apt- get install ntlmaps "
Заполните соответствующие поля:
- Proxy server
- Proxy port
- User
- Password