.bash_profile 不在 su 用户上运行

Posted

技术标签:

【中文标题】.bash_profile 不在 su 用户上运行【英文标题】:.bash_profile doest run on su user 【发布时间】:2019-03-25 11:53:17 【问题描述】:

我在 centos 中创建了一个 bash_profile

#vi /home/hadoop/.bash_profile

如下:

# .bash_profile
# User specific environment and startup programs
export j=1

但是,当我这样做时

[root@hadoop1 ~]# su hadoop
[hadoop@hadoop1 root]$ echo $j

[hadoop@hadoop1 root]$

我想我的 .bash_prfile 应该为每个 su 登录运行?

【问题讨论】:

【参考方案1】:

.bash_profile 不会加载,除非您使用 --l--login 选项之一或直接使用该用户登录。 Checkout this link 来自 Unix 和 Linux 堆栈交换。您也可以在 shell 中运行 man su 以查看所有可用选项。

【讨论】:

您能否建议我是否应该使用 .bashrc 来代替?还是应该创建 /etc/profile? 我建议使用su -l hadoop 来启动新的shell。 .bash_profile 这样启动 shell 时会加载吗? 是的,.bash_profile 在使用-l 选项时运行。

以上是关于.bash_profile 不在 su 用户上运行的主要内容,如果未能解决你的问题,请参考以下文章

xshell的cp权限不够,不在 sudoers 文件中,su故障

Linux-命令-su-sudo

linux 下面安装的oracle,但home/oracle/里面没有.bash_profile这个文件,不知是丢失还是怎样,要怎么处理

配置bash以及bash初始化

配置bash以及bash初始化

4月4日