这个问题搞了半天需要记录一下。网上大致有两种原因:
原因一:/etc/profile这个文件的少了一个#
解决方法:把这个#补上去,保存退出就好了。
原因二:/etc/profile 里面写了错误的脚本
这种问题比较严重,甚至导致无法开机。
无法开机解决方案:
1、按alt+ctrl+F1进入root环境
2、分别输入用户名和密码
3、cd /etc
4、/usr/bin/sudo vi profile
编辑这个文件,把错误的脚本删除。wq保存退出。
5、reboot
但是这两个方案都没有解决我的问题,冥思苦想,还是自己发现了问题。
原因三:就是博主犯的错误了。在/etc/profile.d目录里面增加了一个开机脚本init.sh。
而在init.sh的末尾加了一行:
source /etc/profile
就是这行出问题了。
命令行里执行 source /etc/profile时,这个profile会循环依次调用/etc/profile.d目录的脚本;而其中一个init.sh又包含了 source /etc/profile。这个文件又调用init.sh...看到问题了吧?死循环了。
把init.sh的这行去掉 再source /etc/profile就很快执行成功了。