Поместите команды export SPARK_HOME = ...
и т. Д. В файлы запуска вашей оболочки. С bash это будет либо ~ / .profile
, либо ~ / .bash_profile
.
В Linux / etc / environment
обычно читается pam_env.so
во время входа в систему, и он не поддерживает расширение существующих переменных, поэтому установка PATH = $ PATH: / something
приведет к появлению литерала string $ PATH
в вашем PATH
. Это не то, что вам нужно. (См., Например, this и this , также для развлечения this .)
Кроме того, установка PATH
в / etc / environment
может не работать, поскольку глобальные сценарии запуска оболочки могут их переписать. (Они работают в Debian по умолчанию, в старой CentOS, которая у меня есть, сценарии запуска, кажется, только добавляются к PATH
).
Если ваша система не использует pam_env.so
, а вы только создаете сценарий вручную, то эти соображения, конечно, не имеют значения. Но похоже, что он широко используется по крайней мере в нескольких дистрибутивах Linux, поэтому было бы неплохо использовать другое имя файла.
(Поскольку это полностью противоположно тому, что было сказано в других ответах, я тестировал его на старой CentOS.)
Я поместил следующее в / etc / environment
:
export FOO1=bar
export FOO2=foo:$FOO
После входа в систему снова набор | grep FOO
показывает:
FOO1=bar
FOO2='foo:$FOO'