Linux在启动中常常会因为一些故障而没法正常其中。这是时候常常可以通过Single单用户模式、救济模式等方式进行启动以及救济恢复正常。本文虫虫给大家介绍一下这些典型的模式和以一个Xen虚拟化模式下Centos 6.5进级内核情况下致使系统故障的救济解决。
单用户模式
Linux下最经常使用的是单用户模式,可以在最小加载模式下(init 1),无需用户认证情况下加载系统,进入shell命令行界面。单用户模式网络被禁用,而且也没有启用不少服务。如果呈现系统文件破坏,配置文件丢失,或者用户密码丢失没法进入系统的情况,可使用单用户模式。注意新版本的centos 7以及之前版本centos进去单用户方式不同样,咱们分别截图介绍下:文章源自微观生活(93wg.com)微观生活-https://93wg.com/4131.html
centos 6
在Grub菜单界面文章源自微观生活(93wg.com)微观生活-https://93wg.com/4131.html
按e,编辑命令文章源自微观生活(93wg.com)微观生活-https://93wg.com/4131.html
kernel行的最后加之single,回车,然后按b,加载启动系统。文章源自微观生活(93wg.com)微观生活-https://93wg.com/4131.html
就会到到单用户shell界面,在改界面可以用passwd修改root密码。文章源自微观生活(93wg.com)微观生活-https://93wg.com/4131.html
centos 7
centos7 是用grub2菜单,菜单界面如下图:文章源自微观生活(93wg.com)微观生活-https://93wg.com/4131.html
按b进入编辑界面,注意centos 7下grub 2的编辑界面以及之前的系统大有不同文章源自微观生活(93wg.com)微观生活-https://93wg.com/4131.html
在linux 16 哪一行 LANG= en_US.UTF-8 最后增添\"init=/bin/sh\"文章源自微观生活(93wg.com)微观生活-https://93wg.com/4131.html
按住Ctrl+x 启动系统就进入了单用户模式。然后用passwd修改密码或者其他操作文章源自微观生活(93wg.com)微观生活-https://93wg.com/4131.html
救济模式
有时候系统根本没法启动,乃至grub菜单都加载不了,这时候候就需要使用Linux启动盘来辅助进入救济模式来做故障修复了。文章源自微观生活(93wg.com)微观生活-https://93wg.com/4131.html
救济模式需要启动盘辅助加载系统,所以要扭转boot顺序为从光盘或者USB启动。注意在如果使用xen虚拟机Centos系统的话,是没法修改boot顺序的,如下图:
要扭转启动顺序必需借助Xen宿主机来,咱们先登陆宿主机:
执行xe vm-list,找到咱们的虚拟机的uuid
然后顺次执行下面两个命令:
xe vm-param-set uuid=97f817bd-7f6b-3ea8-056b-e19fe055c800 HVM-boot-policy=\"BIOS order\"
xe vm-param-set uuid=97f817bd-7f6b-3ea8-056b-e19fe055c800 HVM-boot-params:order=\"dc\"
这样就能够显示设置boot顺序了
咱们选中DVD-Drive,然后启动系统
选择\"Rescue installed system\"进入救济模式,选择语言、键盘以及网络落后入
Tab点击Continue继续
注意该页的信息咱们的系统被加载到/mnt/sysimage下了,后面要用到。
此处选择shell进入命令操作界面,其他两个是fakd进行诊断;reboot重启系统。
这时候就会进入一个命令行界面,注意此时系统是临时的光盘启动救济系统。为了进行操作咱们需要加载硬盘上的系统。咱们要用chroot命令:
chroot /mnt/sysimage
然后就能够进行其他操作了,比如修改密码,修复配置,备份文件等。
救济实例
最后咱们举个救济的实例作为收场,以前Linux内核爆个严重漏洞TCP网络数据包时候存在缺点致使三个漏洞, CVE-2019-11477,CVE-2019-11478以及CVE-2019-11479,关于该漏洞的预警以及修复办法,虫虫的此前发文介绍过。修复该漏洞根本办法是进级内核,Centos 6.5 需要进级内核版本到kernel-2.6.32-754.15.3版本。
用yum update kernel进级Xen虚拟机Centos 6.5后,重启呈现故障,乃至没法进入grub菜单。
此时咱们可使用上面的提到的救济模式,在救济模式下修改/etc/grub.conf
修改配置中default=1,表示加载上一个内核。
然后reboot重启系统,故障恢复。
因为centos内核补钉以及Xen架构兼容致使问题,所以恢复系统后
yum remove kernel-2.6.32-754.15.3.el6.x86_64.rpm
恢复所有现场。
以上是一般情况下的救济恢复模式。因为咱们的事故主机是Xen虚拟机,咱们有更便捷编辑启动选项的办法。那就是使用xe命令来直接在xen宿主机上编辑虚拟机的grub.conf。
首先登陆到xen宿主机上:
1、执行 xe vm-list查询事故机器的uuid(同上脸部分)。
2 在xen center关闭该机器或者用命令关机
xe vm-shutdown uuid=97f817bd-7f6b-3ea8-056b-e19fe055c800
3、通过下列命令启动编辑:
xe-edit-bootloader -u 97f817bd-7f6b-3ea8-056b-e19fe055c800 -p 1
以及救济模式同样,修改配置中default=1,保留。
重启系统,其他同救济模式操作同样。
总结
本文介绍了Linux(centos)下系统单用户模式和救济模式及操作办法。并通过实例介绍了在内核进级失败系统没法启动情况下的救济恢复操作。并穿插介绍了xen虚拟化中一些xen宿主机管理命令。
以上就是微观生活(93wg.com)关于“Xen 虚拟机CentOS 6.5 内核加载失败救济实例一则”的详细内容,希望对大家有所帮助!
评论