一、问题描述
进入终端之后发现用户名命令行提示符成了:-bash-4.1$,不显示用户名、机器名信息。
也就是用户文件丢失造成。
二、原因分析:
用户home目录里面与环境变量有关的隐藏文件被删除所导致的。
主要相关的文件是:
.bash_profile
.bashrc
这两个文件被删除了,导致了这个错误
/etc/skel/该目录下是用来存放新用户环境变量文件的,添加新用户时,系统会将该目录习文件拷贝到新用户家目录中。默认情况下该目录下都是隐藏文件;通过修改、添加、删除该目录下的文件,可为新添加的用户提供统一的、标准的、初始化用户环境。
————————————————
以上说明转自下方文章,本人根据自己理解加以改变
原文链接:https://blog.csdn.net/master_hunter/article/details/126544755
三、解决方案
从/etc/skel把丢失的文件 复制回来就可以了。
注意一定要在有问题的用户中进行执行命令,不能在root用户中执行该命令。
直接在原来的bash4下输入:
cp /etc/skel/.bash* ~
之后登出:
logout或者exit
再登进看看:
su - 用户名
就可以发现修复了
遇到此种问题,那么需要了解和用户创建有关的一个目录(/etc/skel/目录),此目录下的所有文件(包括隐藏文件)都会被复制到新添加的用户的家目录中。