Root用户无法登录Red Hat和CentOS
时间:2019-08-20 17:58:29 来源:igfitidea点击:
下面是排除root无法登录故障的一些步骤:
忘记root密码
如果忘记root密码,那么需要重启进行重置,具体方法可查看 重置root密码
检查/etc/passwd文件中的shell是否为nologin
[root@server ~]# grep root /etc/passwd root:x:0:0:root:/root:/sbin/nolgin
如果是nolgin, 是不能登录的。
需要将shell更改为/bin/bash
usermod -s /bin/bash root
检查root账户的过期日期
chage -l root
(它将显示帐户信息,检查帐户过期日期)。
[root@server ~]# chage -l root Last password change : Sep 17, 2014 Password expires : never Password inactive : never Account expires : never Minimum number of days between password change : 0 Maximum number of days between password change : 99999 Number of days of warning before password expires : 7 [root@server ~]#
检查/etc中的“nologin”目录
检查 /etc中是否有 nologin目录。
如果存在,使用rm进行删除。
ls -ld /etc/nologin && rm -fr /etc/nologin
检查/etc/securetty的权限
如果文件/etc/securetty的权限不是644,也有可能导致无法登录
chmod 644 /etc/securetty
检查/etc/securetty文件的内容
securetty文件必须具有以下给定内容。
参考如下,内容可能因RHEL/CentOS版本而异。
[root@server~]# cat /etc/securetty console vc/1 vc/2 vc/3 vc/4 vc/5 vc/6 vc/7 vc/8 vc/9 vc/10 vc/11 tty1 tty2 tty3 tty4 tty5 tty6 tty7 tty8 tty9 tty10 tty11 [root@server ~]#
ssh中禁用了root登录
检查ssh配置文件
[root@server ~]# grep Root /etc/ssh/sshd_config PermitRootLogin no [root@server ~]#
修改成PermitRootLogin yes
后重新加载或者重新启动sshd服务。
/etc/init.d/sshd reload 或者 /etc/init.d/sshd restart