这几天给root分区扩容,结果扩容后登录系统就显示如下:
-bash-4.2$
这种情况表示用户的家目录,或家目录下配置用户文件丢失!查看账号家目录是否存在,提示如下
-bash-4.2$ cd ~ -bash: cd: /sbin/nologin: 不是目录
需要重新创建家目录,并添加配置文件
可以先cat /etc/passwd ,查看一下账号的家目录,如果家目录丢失,可以在相应目录创建
[root@linux ~]#mkdir /home/games/ [root@linux ~]#chown games:games /home/games/ [root@linux ~]#ls -l /home/ 总用量 0 drwxr-xr-x. 2 games games 6 7月 7 13:54 games
创建了目录/home/games/,我们还需要更改用户games的属性,给目录/home/games指定为用户games的家目录。
[root@linux ~]#usermod -d /home/games/ games
最后,家目录有了。我们需要进行最终也是最核心的操作,给用户games的家目录添加用户配置文件。用户配置文件位于/etc/skel/目录下以.bash开头的三个影藏文件。将其拷贝至家目录/home/games下即可。
[root@linux ~]$ ls -a /etc/skel/ . .. .bash_logout .bash_profile .bashrc [root@linux ~]#cp /etc/skel/.bash* /home/games/ [root@linux ~]#su - games [games@linux ~]$
如此,当再次登陆用户games时,这可以正常显示。
如果家目录没变,只是家目录下的配置文件丢失,则只需要将/etc/skel/下的.bask开头的三个文件拷贝至家目录即可。