【问题标题】:Permanently set environment variables for Multiple users为多个用户永久设置环境变量
【发布时间】:2018-12-25 14:56:01
【问题描述】:

Java 构建机器在 Redhat 7.5 上运行 mvn clean package deploy 来构建 Java 代码。

多个用户使用他们的用户名登录到此构建机器,以构建 Java 代码。

为所有用户永久设置JAVA_HOME并更新PATH环境,

更新/etc/profile 需要sudo source /etc/profile 为每个用户的每次登录。所有用户都属于wheel

编辑:

在内部命令上使用sudo 无效


如何为每次登录永久设置这些变量?

【问题讨论】:

  • 您的所有用户都在使用 bash shell 还是其他 shell?对于 bash,/etc/profile 通常会自动读取,不需要显式获取。你确定你导出了变量吗?
  • @RealSkeptic 这是 bash。我没有导出
  • 没有导出,那些不是环境变量而是shell变量。所以你必须出口。艾玛的答案是正确的。

标签: java bash shell rhel user-management


【解决方案1】:

编辑 /etc/profile 应该可以,但不推荐。 您应该在 /etc/profile.d/ 中创建一个新文件并使用导出设置 JAVA_HOME。

【讨论】:

    【解决方案2】:

    你的问题有些奇怪。

    sudo source /etc/profile 通常应该给出答案sudo: source: command not foundsource 不是命令,而是内部命令。你不能sudo它。

    如果/etc/profile 上的权限正确,更新/etc/profile 应该可以工作,也就是说,所有用户至少 r-- (644),尽管 755 也很常见。在任何情况下,都不要将您的/etc/profile 限制在特定的组中。

    【讨论】:

    • 你是对的...source 是内部命令,例如cdexportetc...我的错。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-09-15
    • 2014-06-03
    • 2014-04-25
    • 2014-04-23
    • 2019-09-03
    相关资源
    最近更新 更多