centos启动排障
centos6
启动引导第一阶段破坏
破坏mbr前446字节
先备份
[root@centos6 ~]# dd if=/dev/sda of=/root/mbr bs=1 count=446
破坏
[root@centos6 ~]# dd if=/dev/zero of=/dev/sda bs=1 count=446
有备份未关机情况下可使用备份恢复
[root@centos6 ~]# dd if=/root/mbr of=/dev/sda bs=1 count=446
无备份未关机,可直接使用命令grub-install恢复
[root@centos6 ~]# grub-install /dev/sda
关机后,没有挂载启动光盘会显示
挂载光盘选择第三项进入救援模式
根据提示最后开启shell
先切换根路径,然后使用grub-install命令
chroot /mnt/sysimage
grub-install /dev/sda
如果不想切换根路径,进行如下操作
cp /mnt/sysimage/sbin/grub /sbin
grub-install --root-directory=/mnt/sysimage /dev/sda
最后可查看一下前446字节内容
hexdump -C -n 446 -v /dev/sda
确认没问题退出重启即可
启动引导1.5阶段破坏
破坏
dd if=/dev/zero of=/dev/sda bs=1 count=10240 skip=512 seek=512
现象:只有光标闪烁
修复:光盘引导进入救援模式
chroot /mnt/sysimage
grub-install /dev/sda
sync
退出重启即可
启动引导第二阶段破坏
保留/boot/grub/grub.conf,删除/boot/grub/下其它所有文件
现象:Error 15
修复与1阶段1.5阶段方法相同
grub.conf文件丢失
现象:启动直接进入grub
修复:
root (hd0 然后可以Tab键出来,
/boot分区使用普通分区,即0x83的都有可能是/boot分区,我这里只有一个,8e为lvm,即选择hd0,0
选择正确此时输入kernel /vm 之后内容Tab键是可以有提示或者补全的,如果有多个内核会都列出来,我这里只有一个内核,所以直接补全了
选错/boot分区后面kernel再Tab会报错,有多个分区选择其它分区即可,直至选对分区
补全kernel之后还需要手动指定根分区位置,我这里是系统安装时自动分区设置的为lvm逻辑卷,如果事先不知道很难试出来具体正确路径,可参考同样安装方式的其它机器。
输入kernel /vmlinuz-2.6.32-754.el6.x86_64 root=/dev/mapper/vg_centos6-lv_root后回车,内核与root路径根据自己实际情况
然后initrd /init Tab键补全后面内容后回车
之后输入boot后回车就能进入系统
进入系统之后需要手动编写/boot/grub/grub.conf配置文件,内容参考如下
由于kernel补全内核后还需要填写根分区,如果是普通分区可以穷举/dev/sda所有分区,使用lvm比较难,可以直接使用光盘启动进入救援模式,在救援模式下可以看到分区情况,在救援模式下直接编辑grub.conf文件
编写如下几行就可正常启动
default=0
timeout=5
title CentOS 6
root (hd0,0)
kernel /vmlinuz-2.6.32-754.el6.x86_64 ro root=/dev/mapper/vg_centos6-lv_root
initrd /initramfs-2.6.32-754.el6.x86_64.img
initrd-2.6.32-754.el6.x86_64.img文件丢失
现象,倒计时结束之后无反应,此现象应是只有唯一一个启动菜单才会出现
另一个现象是黑屏,只有光标闪烁
修复方法1
光盘启动,就如救援模式
先切换根路径
chroot /mnt/sysimage
然后重新生成initramfs文件
mkinitrd /boot/initramfs-$(uname -r).img $(uname -r)
运行之后等一会就重新生成文件
退出重启即可
修复方法2
光盘启动,进入救援模式
挂载光盘到/tmp目录
然后重新安装kernel包
rpm -ivh /tmp/Packages/kernel-2.6.32-754.el6.x86_64.rpm --root=/mnt/sysimage --replacepkgs
等待安装完成退出重启即可
如果切换过根路径可以不用指定--root=/mnt/sysimage
/boot/vmlinuz文件丢失
现象:
修复:
1.光盘启动,进入救援模式
切换根:chroot /mnt/sysimage
挂载光盘:mount /dev/sr0 /mnt
复制光盘中vmlinuz文件到/boot/目录:cp /mnt/isolinux/vmlinuz /boot/vmlinuz-$(uname -r)
退出重启
2.重新安装一下光盘内的内核
/etc/fstab和/boot/grub/中文件都丢失
现象:进入grub
修复:光盘启动进入救援模式
此时提示已经找不到根了
blkid命令可以看到没有发现根相关的,但是看到有类型为lvm2_member
使用vgdisplay和lvdispaly能看到相关信息
先启用vg
vgchange -ay
现在blkid能看到其它几个分区信息
新建一个目录/test,将原来的根分区挂载到/test上,然后根据分区信息手动编写/test/etc/fstab文件,只需要编写挂载根的哪一条就够了,其它挂载信息可以等系统修复完之后再编写
编写完后重启系统重新进入救援模式,此时可以找到根文件系统,并且挂载到/mnt/sysimage
切换根路径
chroot /mnt/sysinage
挂载/boot分区
grub-install /dev/sda 命令修复
手动创建/boot/grub/grub.conf文件
之后退出重启
centos启动排障的更多相关文章
- MongoDB系统CentOS 7.1 crash的排障过程
[作者] 王栋:携程技术保障中心数据库专家,对数据库疑难问题的排查和数据库自动化智能化运维工具的开发有强烈的兴趣. [问题描述] 最近我们有多台MongoDB的服务器CentOS 7.1系统发生了cr ...
- 记一次KUBERNETES/DOCKER网络排障
https://coolshell.cn/articles/18654.html 总结在前面: 1.kill -9杀死docker进程,系统一定是要遍历所有的docker子进程来一个一个发退出信号的, ...
- [转帖]记一次KUBERNETES/DOCKER网络排障
记一次KUBERNETES/DOCKER网络排障 https://coolshell.cn/articles/18654.html 记得之前在一个公众号里面看过这个文章 讲的挺好的.. 物理机直接跑d ...
- 【原】个人对win7开机黑屏只有鼠标排障总结
个人对win7开机黑屏只有鼠标排障总结 文:铁乐猫 第一种情况是explorer.exe进程丢失或损坏有关: 判断方法是按Ctrl+Alt+Del键能呼出任务管理器,结束explorer.exe进程, ...
- dump解析入门-用VS解析dump文件进行排障
突然有一天部署在服务器的一个应用挂掉了,没办法只能进入服务器打开 [事件查看器]查看下,好不容易找到了打开后一脸懵逼 事件查看器查到的内容根本对我们排障没有任何作用. 在这个时候如果有对应的dump文 ...
- [ovs][libvirt][virtio][qemu] vhost user client 排障
ovs-dpdk + qemu 使用vhostuserclient通信,连路不通,libvirt报错如下: -- ::: starting up libvirt version: , package: ...
- centos启动流程[转]
启动流程概览 在硬件驱动成功后,Kernel 会主动呼叫 init 程序,而 init 会取得 run-level 资讯: init 运行 /etc/rc.d/rc.sysinit 文件来准备软件运行 ...
- 【思考】由安装zabbix至排障php一系列引发的思考
[思考]由安装zabbix至排障php一系列引发的思考 linux的知识点林立众多,很有可能你在排查一个故障的时候就得用到另一门技术的知识: 由于linux本身的应用依赖的库和其它环境环环相扣,但又没 ...
- 【排障】tomact未能看到网页
[排障]tomact未能看到网页 文:食梦貘 这是几个月前的事情了,那时候我在安装xwiki,需要用到tomcat,但是初次安装好时碰上过一个故障: 安装tomcat后,客户机用IE网址上输入:服务端 ...
随机推荐
- 基于Ajax技术的前后端Json数据交互方式实现
前言 使用浏览器访问网站是日常生活中必不可少的一件事情,当我们在浏览器地址栏中输入网址后会看到网站的内容,那么这个过程中发生了什么?下面简单介绍下浏览器访问网站过程. 第一步:浏览器向DNS服务器发起 ...
- 使用WebSocket实现简单的在线聊天室
前言:我自已在网上找好了好多 WebSocket 制作 在线聊天室的案列,发现大佬们写得太高深了 我这种新手看不懂,所以就自已尝试写了一个在线简易聊天室 (我只用了js 可以用jq ) 话不多说,直接 ...
- 09 深科技相关表结构 (未完成)、git
1.深科技相关 1. 深科技表结构(6表) 深科技4张+2张用户表 - 深科技 用户表 用户Token 文章来源 文章表 通用评论表 通用收藏表 # ######################## ...
- OSError: cannot open resource(pillow错误处理)
https://www.jianshu.com/p/c64ae3e9b196 pillow使用备忘之OSError: cannot open resource错误处理 在使用pillow过程中,Pyt ...
- 【luoguP2827】 蚯蚓
题目描述 本题中,我们将用符号\rfloor⌊c⌋ 表示对 cc 向下取整,例如:\lfloor 3.0 \rfloor = \lfloor 3.1 \rfloor = \lfloor 3.9 \rf ...
- SSO 断点登陆
1. 摘要 ( 注意:请仔细看下摘要,留心此文是否是您的菜,若浪费宝贵时间,深感歉意!!!) SSO这一概念由来已久,网络上对应不同场景的成熟SSO解决方案比比皆是,从简单到复杂,各式各样应有尽有!开 ...
- JavaScript设计模式—装饰器模式
装饰器模式介绍 为对象添加新的功能,不改变其原有的结构和功能,原有的功能还是可以使用,跟适配器模式不一样,适配器模式原有的已经不能使用了,装饰器示例比如手机壳 UML类图和代码示例 Circle示原来 ...
- Leetcode题目104.二叉树的最大深度(DFS+BFS简单)
题目描述: 给定一个二叉树,找出其最大深度. 二叉树的深度为根节点到最远叶子节点的最长路径上的节点数. 说明: 叶子节点是指没有子节点的节点. 示例: 给定二叉树 [3,9,20,null,null, ...
- spring boot 下 开启 gzip
[参考文章]:Spring boot开启Gzip压缩 [参考文章]:Accept-Encoding Spring 版本 :5.1.2-RELEASE 1. application.yml 配置 ser ...
- 剑指offer21----数组中奇数偶数
题目描述: 输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有奇数位于数组的前半部分,所有偶数位于数组的后半部分. 基本实现 如果不考虑时间复杂度,最简单的思路应该是从头扫描这个数组,每 ...