ubuntu /etc/profile文件

转自:http://www.blogjava.net/zhyiwww/archive/2010/01/29/311240.html


关于配置文件/etc/profile

这个文件,是系统启动是要自动执行的文件,任何一个用户登录系统都会执行这个文件。
这个文件里面的配置,是全局配置。所以,如果你需要让你的变量让所有的用户都能使用的话,那么可以考虑在此配置文件里面添加。
比如JAVA_HOME变量的配置。
但是,尽量的,我们不要去修改这个配置文件,因为这个是系统的配置文件。我们尽量的修改我们自己独立配置文件。
在可能的时候,或者重新配置的时候,你可以随时修改你自己的配置文件而不致于影响他人或者此服务器系统。

同样的道理,修改/etc/rd.local也可以达到同样的效果。
但是和上面的一样,不是一个好的选择。

替代方案是什么呢?
先来看/etc/profile的源代码

if [ -d /etc/profile.d ]; then
  for i in /etc/profile.d/*.sh; do
    if [ -r $i ]; then
      . $i
    fi
  done
  unset i
fi


if [ "$PS1" ]; then
  if [ "$BASH" ]; then
    PS1='"u@"h:"w"$ '
    if [ -f /etc/bash.bashrc ]; then
    . /etc/bash.bashrc
    fi
  else
    if [ "`id -u`" -eq 0 ]; then
      PS1='# '
    else
      PS1='$ '
    fi
  fi
fi

红色的代码部分,说明/etc/profile会首先执行/etc/profile.d/目录下的所有*.sh文件。
这也就给我们一个可扩展的思路。

如果我们需要配置JDK,那么就在/etc/profile.d/下创建jdk.sh文件
如果需要配置oracle,那么就在//etc/profile.d/下创建oracle.sh文件

然后,在对应的配置文件里面添加你自己的配置就可以了。

这就是,我上两篇blog里面用到的思路。


### 如何在 Ubuntu `/etc/profile` 文件中设置环境变量 为了确保在 Ubuntu 的 `/etc/profile` 中添加的环境变量能够正常工作,需遵循特定的操作流程。 #### 检查文件权限 确保 `/etc/profile` 文件具有正确的权限设置。这可以防止由于权限不足而导致的变化不被应用。使用如下命令来验证和调整文件权限: ```bash ls -l /etc/profile sudo chmod 755 /etc/profile ``` 上述命令会显示当前文件权限,并将其更改为所有者可读写执行、组和其他用户只读执行模式[^2]。 #### 编辑 `/etc/profile` 打开 `/etc/profile` 进行编辑,通常建议使用具备超级用户权限的文字编辑器如 `nano` 或 `vim` 来完成这项操作: ```bash sudo nano /etc/profile ``` 在文件末尾追加所需的环境变量定义语句。例如,要添加一个新的路径到 PATH 变量,应按照下面的方式编写: ```bash export NEW_PATH="/opt/newdirectory" export PATH=$PATH:$NEW_PATH ``` 这段代码创建了一个新的环境变量 `NEW_PATH` 并将其加入现有的 `PATH` 环境变量之中[^1]。 #### 应用更改 保存并关闭编辑后的文件之后,为了让这些改动即时生效而不必重新启动计算机,可以在终端运行以下指令加载更新过的配置: ```bash source /etc/profile ``` 通过这种方式可以使新设定立刻应用于当前 shell 会话以及任何新开启的 shell 实例中[^3]。 需要注意的是,虽然对 `/etc/profile` 所做的变更会影响整个系统内的所有用户,但如果希望仅针对某个具体用户的 session 设置临时性的环境变量,则应该考虑将相应的声明放置于该用户的主目录下的 `.bashrc` 文件内而不是全局范围内的 `/etc/profile` 文件里[^4]。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值