2017-02-19 7 views
0

я на Ubuntu 16.10,Не может найти, кто устанавливает http_proxy переменных окружений на Ubuntu

При работе в терминале:

env | grep proxy 

я получаю:

https_proxy=https://127.0.0.1:8888/ 
http_proxy=http://127.0.0.1:8888/ 

Я могу» t найдите, кто устанавливает эти переменные среды.

Я пробовал все ответы here и ничего не смог найти. Пробовал различные оболочки/терминалы. Переменные всегда есть.

Любая идея, что еще это может быть?

+0

Если вы не можете найти источник, удалите его с помощью 'unset https_proxy http_proxy' в соответствующем файле запуска оболочки. – Jens

+0

Это то, что я, вероятно, в конечном итоге сделаю. Но это не так. – Amir

+0

Stack Overflow - это сайт для вопросов программирования и разработки. Этот вопрос кажется вне темы, потому что речь идет не о программировании или разработке. См. [Какие темы можно задать здесь] (http://stackoverflow.com/help/on-topic) в Справочном центре. Возможно, лучше сказать [Суперпользователь] (http://superuser.com/) или [Unix & Linux Stack Exchange] (http://unix.stackexchange.com/). Также см. [Где я пишу вопросы о Dev Ops?] (Http://meta.stackexchange.com/q/134306) – jww

ответ

0

Не повезло в проверке всех обычных подозреваемых? Затем пришло время использовать большую пушку:

find /etc $HOME /usr/local -type f | xargs grep -E 'https?_proxy' 

Запустите это как корень. Добавьте каталоги по своему вкусу.

+0

ничего не найдено: \ – Amir

+0

@Amir Hmm. Мое последнее предположение заключалось в том, что он скомпилирован в один из исполняемых файлов, где угодно: от init, getty или login. Попробуйте 'string -a executable | grep proxy' на них. Использует ли Ubuntu systemd? Тогда проверьте это. – Jens

0

Переменная окружения в текущей оболочке может быть установлена ​​только в родительском процессе или в файле, полученном вашей оболочкой. Я бы начал с включения трассировки оболочки в соответствующие rc-файлы, которые были получены при входе в ваш домашний каталог. Это также место, где я бы проверил, уже ли установлены переменные среды в этой точке (что означало бы, что он был задан глобальным процессом инициализации, например, в файлах rc, которые находятся в/etc). Теперь войдите и проверьте вывод.

Если переменная окружения уже установлена ​​на начальном этапе, вы не можете сделать ничего, кроме прослушивания администратора, что он должен удалить ее (что, вероятно, не будет работать). Если он не задан изначально, вам нужно просмотреть результат трассировки оболочки, пока вы не найдете точку, где установлена ​​переменная, или где вы видите, что какой-то вредоносный скрипт отключает трассировку.

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

+0

Спасибо за ответ. Я использую Terminator с Zshell. Как я уже сказал, я попытался использовать родной терминал с bash, и я все еще вижу эти vars. – Amir

+0

Я никогда не использовал Terminator, но я подозреваю, что переменные либо уже установлены в процессе, который запускает Terminator, либо Terminator устанавливает его. Поэтому я предлагаю вам перейти к моему предложению и, в частности, убедиться, что вы печатаете значение этих переменных в ваших файлах инициализации zsh. После этого мы можем сузить поиск дальше. – user1934428

Смежные вопросы