首页 > 解决方案 > 在 Linux 启动时设置环境变量

问题描述

stackoverflow 中有几个关于这个主题的条目。例如这里

为什么它不能在我的装有 Debian-10 (Buster) 的计算机上运行?我做了3次试验:

  1. /etc/environment.d下放一个名为90java.conf的文件

    JAVA_HOME=/usr/lib/jvm/default-java

  2. /etc/profile.d下放置一个名为java-env.sh的文件

    导出 JAVA_HOME=/usr/lib/jvm/default-java

  3. 在/etc/profile的末尾添加相同的文本

    导出 JAVA_HOME=/usr/lib/jvm/default-java

并在每次试用时重新启动 Debian。

然后打开一个命令窗口并输入

echo $JAVA_HOME

响应总是一个空行。喜欢了解我在启动时对环境变量没有掌握的内容。

后来补充:

输入导出语句到/etc/bash.bashrc解决了我的问题。

但是,我想了解/etc/environment/etc/profile方法的不同之处。为什么在这种情况下环境变量不显示?

标签: linuxenvironment-variablesstartup

解决方案


像这样的设置只在特定的上下文中相关。例如您的外壳,您想在其中使用软件和工具。

因此,该解决方案实际上比您尝试过的所有方法都简单得多。您必须在您的私人/本地环境中执行此操作。但这取决于你的外壳。

如果您有 bash(或类似的 shell bash、sh、dash、...),最好编辑文件~/.profile并添加export JAVA_HOME=/usr/lib/jvm/default-java到那里。如果您有其他 shell,请找到我们正确的等效文件。对于 csh 它会是~/.cshrc等。


推荐阅读