zoukankan      html  css  js  c++  java
  • CentOS 6 各种启动文件损坏及修复

    参考资料:https://www.cnblogs.com/Q--T/p/8167876.html

    一、stage1 mbr的破坏和恢复

    清空mbr 前446字节

    dd if=/dev/zero of=/dev/sda bs=1 count=446;reboot

    如果没有挂载启动光盘,会显示这样

    如果启动前挂载了光盘,则重启之后自动从光驱启动了

     此时选择救援模式,Rescue installed system

    按照提示操作最后进入到shell

    修复mbr需要用到grub去修复磁盘,所以要先把根切到硬盘上

    1)chroot /mnt/sysimage

    2)运行grub-install进行修复

    grub-install /dev/sda

    3)查看一下

    hexdump -C -n 512 /dev/sda

    4)exit

    5)reboot

     

     

     6)可以进入操作系统。

     二、

    stage1.5 数据破坏与修复

    1.5阶段的数据存放在mbr之后的27个扇区内,也就是13824个字节

    破坏掉1.5阶段的数据,无需全部破坏,我们用5120个字节试试.

    dd if=/dev/zero of=/dev/sda bs=1 count=5120 skip=512 seek=512

    修复方法同样可以用grub-install

     出现界面如下,光标闪,长时间无法进入操作系统。

     

    重启进入救援模式

    chroot /mnt/sysimage

    grub-install /dev/sda

    exit

    reboot

    三、

    stage2  grub目录的破坏与修复

    删除文件但保留grub.conf

    cd /boot/grub

    rm -rf  *

    重启,提示error 15 ,

    因为之前用grub-install修复过.所以之后启动系统都需要读取这些文件.

    除了grub.conf文件,其他文件依然使用grub-install来修复.

     

    进入救援模式

    chroot /mnt/sysimage/

    grub-install /dev/sda

    sync

    恢复grub.conf文件

    cd /boot/grub

    vim  grub.conf  (我编辑这个没有成功,后来进入了救援系统的网络模式,远程从其他服务器拷贝了grub.conf)

     

     保存退出

    :wq

    exit 

    reboot

    可以进入操作系统

    四、

    五、误删/sbin/下的init

    rm  -f  /sbin/init,reboot

    重启后一直停在这个画面。

    1、进入 救援模式

    2、chroot   /mnt/sysimage

    3、从别的主机拷贝init到/sbin下(或者,mount  /dev/cdrom /mnt ;rpm ivh /mnt/Packages/upstart.xxxxxxxx.rpm --force)

    4、exit

    5、reboot

  • 相关阅读:
    [zt]在XML序列化时去除默认命名空间xmlns:xsd和xmlns:xsi
    线程间操作无效: 从不是创建控件“...”的线程访问它。
    Unity IoC + WCF + wsHTTPBinding + Certificate Authorization
    [转]PowerDesigner使用教程 —— 概念数据模型
    C# Post数据和接收简单示例【摘】
    163相册验证码图片的识别手记之一 去除干扰
    实现WCF和Unity 的集成
    Html.ActionLink 几种重载方式说明及例子
    如何从程序员到项目经理【转帖51cto】
    OSG闪存
  • 原文地址:https://www.cnblogs.com/zhangzeyuan/p/14087248.html
Copyright © 2011-2022 走看看