У мене є таке /etc/environment
:
http_proxy=http://myproxy.net:12345
Після перезавантаження машини я входжу в систему і перевіряю змінну:
root@d6c44fa03243:/# echo $http_proxy
(empty)
Чому змінна не встановлена?
Примітка. Я мушу зазначити, що це контейнер для докерів, хоча я не бачу, чому це змінило б значення.
EDIT
Детальніше про систему ( Ubuntu 16.04.4 Xenial Xerus
):
root@d6c44fa03243:/# uname -a
Linux d6c44fa03243 4.4.0-116-generic #140-Ubuntu SMP Mon Feb 12 21:23:04 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
root@d6c44fa03243:/# cat /etc/issue
Ubuntu 16.04.4 LTS \n \l
EDIT2
Відповідно до документації Ubuntu :
/ тощо / навколишнє середовище
Цей файл призначений спеціально для системних параметрів змінної середовища. Це не файл скриптів, а складається з виразів призначення, по одному на рядок.
/etc/environment
не оцінюють?
/etc/environment is not part of POSIX, it belongs to PAM (Pluggable Authentication Module), and only programs compiled with PAM support are able to use it (primarily login systems, which subsequently start the shell or user environment). This means it isn't even read by your shell.
.
This file is specifically meant for system-wide environment variable settings
/etc/profile
?