`
圣米格利托
  • 浏览: 56962 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

root 帐户无法登陆解决办法【转】

阅读更多

linux下root无法登陆,一般有以下几种情况:

 

1、/etc/securetty 中规定了root可以从哪个tty设备登录,如果root登录不了,可以检查/etc/securetty文件,看看是否禁用了什么设备。如果发现被修改,可以将文件改回原来的样子。并且注意,如果修改了该文件,要保证该文件的权限模式为600,才能正常生效。

正常的/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

 

2、/etc/ssh/sshd_config文件中禁用root登录。如果sshd_config文件中有PermitRootLogin no这行,root就无法通过ssh登录。请改成PermitRootLogin yes,然后重启ssd。

# /etc/init.d/sshd restart

 

3、使用了pam认证,pam配置中限制了root账号的登录。这种情况的可能性比较多,需要仔细检查/etc/pam.d/下以及/etc/security/下的配置文件是否有禁止root的设置。

 

4、/etc/passwd文件被修改。检查passwd文件中,root的uid是否为0,root的shell路径是否真实存在,总之root这行的每个设置要完全正常才行。(我就遇到过一种特殊情况,passwd文件的换行符变成了DOS格式,结果linux系统认为shell路径是/bin/bash^M,返回路径不存在错误,导致了root无法登录。所以还要保证passwd文件的换行符是unix格式。)

 

5、root无法登录Xwindows图形界面。检查/etc/pam.d/gdm,将

auth required pam_succeed_if.so user != root quiet 这行注释掉。

 

此外,还有很多其他的情形会导致root无法登录。

遇到root无法登录时,要看看是否ssh方式、控制台方式都无法登录。还有看看是否可以用其他账号登录,然后su成root,来进行修复。实在不行,再用单用户方式重启系统,或用光盘引导进入系统,来解除root的禁用(参考如何找回root密码)。

如果是黑客禁用了root登录,还得检查/etc/passwd中是否有其他可疑的账号具有uid=0,以及/etc/sudoers中是否有可疑账号具有sudo权限,然后还得检查系统中是否有rootkit,sshd等系统文件是否被黑客替换等。

 

 

 

————————————————————————————————————————————————————

 

RHEL 5.4中的关于pam.d/login的设置,导致root在内的用户无法在控制台登录

因为在redhat 5.4 的64位版的系统中安装oracle 10,所以在/etc/pam.d/login 中加入:

 

session    required    /lib/security/pam_limits.so

 

然而这样的话在64位LINUX上就可能会出现ROOT无法在控制台上登陆的情况。

解决方法:

在32位系统使用此配置for oracle :

session    required    /lib/security/pam_limits.so

上面的配置为某些文档和资料所载,但只适合32位系统

 

 

而在64位系统上要使用此配置for oracle :

session    required    /lib64/security/pam_limits.so

 

 

建议配置:

session    required    pam_limits.so

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics