.login没有在CentOS登录上调用

时间:2015-01-15 18:53:53

标签: bash variables login centos

当我读到bash shell时,每次myUser登录时都应调用/home/myUser/.login。 这就是我想设置和导出一些变量的地方:

在/home/myUser/.login中:

.  /etc/login
... and some user specific variables later.
echo .login done.

在/ etc / login中有一些常见的变量设置,如:

export JBOSS_HOME=/home/ec2-user/sw/wildfly-8.2.0.Final
echo /etc/login done.

没有显示两个回声。 但是

.  /home/myUser/.login  

作品。

drwx - x - x 6 myUser myUser 4096 1月15日18:42 myUser

因为在useradd -m ...中忽略-m, 和useradd -p hallo ...不会对密码进行哈希处理(但是passwd --stdin会这样做), 我想知道我是不是那个犯错的人......

2 个答案:

答案 0 :(得分:1)

欢迎来到SO!

bash shell在交互式登录会话期间从多个文件中读取。 .login不是其中之一。

来自bash手册页的INVOCATION部分

  

当bash作为交互式登录shell或具有--login选项的非交互式shell调用时,它首先从文件/etc/profile读取并执行命令(如果该文件存在)。读取该文件后,它会按顺序查找~/.bash_profile~/.bash_login~/.profile,并从第一个存在且可读的命令中读取和执行命令。该
  启动shell以阻止此行为时,可以使用--noprofile选项。

希望这能回答你的问题。

答案 1 :(得分:1)

man bash(RHEL 6和RHEL 7):

  ~/.bash_profile
          The personal initialization file, executed for login shells
   ~/.bashrc
          The individual per-interactive-shell startup file