有时候大家可能会忘记自己的root密码,或者错误(命令输入错误,命令位置输入有误等)编辑了一个/etc目录下的核心文件导致系统不能正常启动了!怎么办?重新安装系统那是实在没有办法之举!那我们就进入如下两种方式把错误的配置文件改过来,重启系统不就好了吗!接下来咱们就学习一下两种模式恢复系统Lunix单用户模式+救援模式

单用户模式+救援模式类似windows的安全模式

使用虚拟机在系统里面输入指令重启系统是不能达到我们的要求的,也就是说IDC机房可不是想进就进去的。而且里面有很严格的管理制度,安全性很高。怎么办呢?一般只要你需要使用单用户模式,必须要让当地的驻场工程师帮你重启服务器!所以我们使用Vmware来模拟一下:

 

技术分享图片

进入此界面后,上下晃动鼠标,输入“e”进入GRUB页面!

技术分享图片

进入后,找到linux16 开头的一行!按向右的方向键,定位到ro 然后修改ro为rw,并添加如下红框内的命令行!

技术分享图片

使用下面的提示使用“Ctrl-x”start!!!

进入系统后,其实只是进入了一个安全模式下的内存系统,并不是真正的咱们正常使用的linux系统,

当我们输入命令  

#ls /sysroot/ 下才是我们正常的系统里面的文件!
 

技术分享图片

使用命令  

#chroot /sysroot/ 切换到正常系统中去!
 

现在我们就可以更改root的密码了!

#passwd root
 

就可以修改密码了(如果linux系统是中文的会出现乱码,使用  "#LANG=en"  即可)。

技术分享图片

注意一定要在修改完密码后,输入

#touch /.autorelabel
 

不然会导致系统无法正常登陆!

这样就完成了,

技术分享图片

重新启动即可!!!

下面我要分享一下因为个人的粗心大意,导致系统不可以正常启动,这要是真正的IDC机房,可就不好整了!所以建议大家,一定要仔细!三思而后行!!!

其实我是想永久关闭selinux防火墙,如下图:

技术分享图片

我直接修改SELINUXTYPE=disabled了,所以导致开机不可以正常启动了!

修改方法就是如上所讲的单用户模式进入修改即可!!!

 

救援模式

 

CentOS 7 与6不同之处就是 2 3 4的运行级别全部都是多用户模式

使用如下命令查看:

#ls -l /usr/lib/systemd/system/runlevel*target
 

 

技术分享图片

首先我们关闭系统(init 0 OR poweroff),点击虚拟机标签,启动时进入BIOS:

技术分享图片

然后通过上下箭头调节CD-ROM至第一启动项,按F10保存:

技术分享图片

然后咱们的虚拟机就会开机进入光盘(是不是很熟悉的界面,首次安装linux时的界面),移动到第三项 Troubleshooting

技术分享图片

选择救援模式--Rescue a CentOS Linux system:

技术分享图片

出现如下界面再次输入 1 回车

技术分享图片

继续回车

技术分享图片

然后就真正到了救援模式的系统,但是和单用户模式一样的是,这不是我们真正的linux运行系统,查看文件之类的首先我们需要输入:

#chroot /mnt/sysimage
 

技术分享图片

然后下面我们就可以查看系统内的文件或者直接修改密码或者重新修改/etc目录下的配置文件即可!

技术分享图片

然后我们再次点击编辑咱们的虚拟机,把DVD设备状态断开如下所示,或者进入BIOS恢复启动即可!

技术分享图片

 

至此两种修复系统的方法就结束了!