在Linux系统中,当我们切换到一个用户比如
[[email protected] ~]#su - user007 -bash-4.2$
出现如上所示的提示符,该如何处理。
一般出现如上提示,则表示用户的家目录,或家目录下配置用户文件丢失!
我们先尝试一下查看user007的家目录是否存在
-bash-4.2$ cd ~ -bash: cd: /sbin/nologin: 不是目录
提示/sbin/nologin,表示此用户user007家目录不存在。因此为他创建目录/home/user007,并设置目录的所属权限
[[email protected] ~]#mkdir /home/user007/ [[email protected] ~]#chown user007:user007 /home/user007/ [[email protected] ~]#ls -l /home/ 总用量 0 drwxr-xr-x. 2 user007 user007 6 7月 7 13:54 user007
创建了目录/home/user007/,我们还需要更改用户user007的属性,给目录/home/user007指定为用户user007的家目录。
[[email protected] ~]#usermod -d /home/user007/ user007
最后,家目录有了。我们需要进行最终也是最核心的操作,给用户user007的家目录添加用户配置文件。用户配置文件位于/etc/skel/目录下以.bash开头的三个影藏文件。将其拷贝至家目录/home/user007下即可。
[[email protected] ~]$ ls -a /etc/skel/ . .. .bash_logout .bash_profile .bashrc [[email protected] ~]#cp /etc/skel/.bash* /home/user007/ [[email protected] ~]#su - user007 上一次登录:五 7月 7 13:58:49 CST 2017pts/2 上 [[email protected] ~]$ [[email protected] ~]$
如此,当再次登陆用户user007时,这可以正常显示。
如果家目录没变,只是家目录下的配置文件丢失,则只需要将/etc/skel/下的.bask开头的三个文件拷贝至家目录即可。
时间: 2024-10-09 03:38:22