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 restart3、使用了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
總結
以上是生活随笔為你收集整理的root 帐户无法登陆解决办法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 多线程的那点儿事(之读写锁)
- 下一篇: OpenCV3.1安装包下载