因为ssh失效,故而重装ssh后,错误赋予权限给chmod 777 /etc/*
导致重启机器后无法正常登陆。。
一开始想到的就是更改root密码
(1)重新启动Centos,在启动过程中,长按“ESC”键,进入GNU GRUB界面。
(GNU GRUB是一个来自GNU项目的多操作系统启动程序。GRUB是多启动规范的实现,它允许用户可以在计算机内同时拥有多个操作系统,并在计算机启动时选择希望允许的操作系统,GRUB可用于选择操作系统分区上的不同内核,也可用于向这些内核传递启动参数)
(2)选择要进入的系统,按“E”键(在启动之前编辑命令)。
(3)选择第二项操作系统的内核“kernel”,按"E"键(在引导顺序编辑选定的命令)。
(4)在 “rhgb quiet”后面间隔,输入“1”或者“single”,按Enter键保存。(向内核传递启动参数,进入单用户模式)
此时又回到GRUB界面.
(5)这时,按“B”键启动系统。
(6)输入命令行“passwd root”重新修改root的密码,按“Enter”键。
(7)输入新的密码,按enter保存后,再重新输入确认密码。
(8)如果出现“all authentication tokens updated successfully”的提示,就说明密码修改成功了。
(9)输入“shutdown -r now”命令行,重新启动系统,就可以使用root账号登陆了。
但是 ,并没有效果!!!
后来又发现!!!
可以SSH远程登陆,但是直接接键盘,显示器就不可以。
在登陆界面输入正确的账号密码会重新返回登陆界面且没有任何提示,
输入错误的账号密码会提示账号密码错误。
解决方法方法:
重启电脑进入单用户模式
[root@chenghy ~]# vi /etc/pam.d/login
#将如下行:
session required /lib/security/pam_limits.so
#修改成:
session required /lib64/security/pam_limits.so
重启,还是无法登陆!!,泪崩。
仔细回忆了自己的谜一般的操作,查看history,发现了 chmod 777 /etc/命令,恍然大悟!
linux目录权限,这个错误操作,引起致命错误
chmod 777 -R /
查看系统日志 /var/log/secure 的内容,如果发现有以下内容:
Oct 9 10:31:46 localhost login: pam_unix(login:session): session opened for user root by LOGIN(uid=0)
Oct 9 10:31:46 localhost login: ROOT LOGIN ON tty1
Oct 9 10:33:46 localhost login: pam_unix(login:session): session closed for user root
Oct 9 10:33:48 localhost login: pam_securetty(login:auth): /etc/securetty is either world writable or not a normal file
Oct 9 10:33:52 localhost login: FAILED LOGIN 1 FROM (null) FOR root, Authentication failure
说明该文件属性已被错误修改,从而导致root无法正常登陆,因此需要修改该文件的属性,以保证只有root用户对该文件拥有一切权限,而对其他用户只有读的权限:
chmod 744 /etc/securetty
这样修改之后,就可以用正确的root密码登陆系统并进行各种管理。