centos6中boot文件被全部删除的故障排除

/boot文件里关于启动的核心文件有三个,/vmlinuz-2.6.32-696.e16.x86_64,initramfs-2.6.32-696.el6.x86_64.img,grub.conf

方法一:

  开机进入救援模式

  chroot    /mnt/sysimgage/                切根

     mount   /dev/sr0 /mnt                 挂载光盘

  cp /mnt/ioslinux/vmlinuz   /boot/            拷贝vmlinuz文件到目录,恢复第一个文件

  mkinitrd   initramfs-`uname -r`.img  `uname -r`    命令生成第二个文件

  grub-install    /dev/sda                 生成grub目录,相当于恢复grub1,1.5,2三个阶段的文件,缺grub.conf

  vi  grub.conf                    手写缺失的grub.conf

  default=0

  timeout=5                   等待时间可修改

  title centos6                  菜单的名字随自己指定

  kernel  /vmlinuz-2.6.32-696.e16.x86_64  root=/dev/sda2            quiet rhgb selinux=0        这里的root指根目录,路径为根所在分区      quiet静默启动 rhgb图形不显示 selinux=0文件不打标

  initrd   /initramfs-2.6.32-696.e16.x86_64.img       

  退出

  重启

  重启时会碰到selinux给文件打标签,很慢,可以修改selinux

  vim  /etc/selinux/config

  SELINUX=disabled

方法二:  

  进入救援模式

  mkdir /mnt/cdrom                    因为现在根目录在/mnt下,所以在/mnt下面建个文件夹为挂载目录

  mount   /dev/sr0   /mnt/cdrom              挂载光盘

  rpm -ivh /mnt/cdrom/Packages/kernel-2.6.32-696.e16.x86_64.rpm  --root=/mnt/sysimage/  --force   因为根目录不是默认位置,所以要指定

  此时前面两个文件已经生成

  chroot /mnt/sysimage/

  grub-install    /dev/sda

  vi  /boot/grub.conf

  default=0

  timeout=5                   等待时间可修改

  title linux                     菜单的名字随自己指定

  kernel  /vmlinuz-2.6.32-696.e16.x86_64  root=/dev/sda2         quiet rhgb selinux=0        这里的root指根目录,路径为根所在分区,不是boot所在位置      quiet静默启动 rhgb图形不显示 selinux=0文件不打标

  initrd  /initramfs-2.6.32-696.e16.x86_64.img

  退出

  重启

在输入kernel 和initrd的路径时,可以在vi界面:r! 利用ls命令补全来输入路径,避免输错

在实验中,因为root和boot路径的错误,尝试无数遍,最后对比快照的grub.conf文件,找到问题,我的路径是逻辑卷下的

 /dev/mapper/vg_centos-lv_root,更改路径后解决
 
如果/boot不是独立的分区,是和/在一个分区下:
    kernel /boot/vmlinuzxxxxxx
    initrd  /boot/iniramfsxxxxx

   应该把/boot加上

/etc/fstab和/boot一起删除的故障

进入光盘救援模式

  fdisk -l          查看分区

  mkdir  /mnt/rootfs   创建挂载文件夹

  将分区一个一个的挂载查看,检查哪个是根分区

  找到然后创建/etc/fstab,手动写入文件

  重启,再进入救援模式

  恢复boot文件

  略

  。。。

centos6中若启动盘为逻辑卷,/etc/fstab和/boot一起删除的故障

  进入光盘救援模式

  fdisk -l            可以看到哪个盘是逻辑卷

  lvs             可以看到逻辑卷的信息

  mkdir /mnt/rootfs         创建root的挂载文件夹

  lvdisplay          可以看到逻辑卷的状态,显示为不可用

  vgchange  -ay         启用逻辑卷

  lvscan           逻辑卷的状态

  mount  /devVolGroup/lv_root  /mnt/rootfs    挂载根文件系统

  vim /etc/fstab         手工写入fstab文件

  reboot             再次进入光盘救援,恢复boot文件

/sbin/init文件被删除

方法一:

  进入救援模式配置网络

  从网络中拷贝init文件到目录下即可

方法二:

  进入救援模式

  从光盘中安装这个文件可以

  rpm2cpio /misc/cd/Packages/upstart-0.6.5-16.e16.x86_64.rpm | cpio -idv ./sbin/init

centos6启动故障排除的更多相关文章

  1. Linux系统之TroubleShooting(启动故障排除)

    尽管Linux系统非常强大,稳定,但是我们在使用过程当中,如果人为操作不当,仍然会影响系统,甚至可能使得系统无法开机,无法运行服务等等各种问题.那么这篇博文就总结一下一些常见的故障排除方法,但是不可能 ...

  2. 1-19-1 RHEL6启动原理和故障排除

    大纲: 一.RHEL6系统启动原理 BIOS--->mbr--->bootloader--->内核--->init--->/etc/rc.d/rc.sysinit---& ...

  3. Atitit.故障排除系列-----apache 不能启动的排除

    Atitit.故障排除系列-----apache 不能启动的排除 能直接使用cli启动httpd   ,,详细打印出信息.. C:\Users\ASIMO>"C:\wamp\apach ...

  4. centos6/7启动故障排错

    centos6启动流程修复: 实验一:删除initramfs-2.6.32-754.el6.x86_64.img进行恢复 该文件很重要initramfs-2.6.32-754.el6.x86_64.i ...

  5. 故障排除:无法启动、访问或连接到 Azure 虚拟机上运行的应用程序

    有多种原因可导致无法启用或连接到在 Azure 虚拟机 (VM) 上运行的应用程序.原因包括应用程序未在预期端口上运行或侦听.侦听端口受到阻止,或网络规则未将流量正确传递到应用程序.本文说明有条理地找 ...

  6. 细化如何安装LNMP + Zabbix 监控安装文档以及故障排除

    1.LNMP所需安装包: 上传如下软件包到/soft目录中 mysql- (centos6. 64位自带)也可根据版本自行挑选,前提你了解这个版本 pcre-8.36.tar.gz nginx-.ta ...

  7. 学习笔记:CentOS7学习之十八:Linux系统启动原理及故障排除

    目录 学习笔记:CentOS7学习之十八:Linux系统启动原理及故障排除 18.1 centos6系统启动过程及相关配置文件 18.1.1 centos6系统启动过程 18.1.2 centos6启 ...

  8. 理解 OpenStack + Ceph (7): Ceph 的基本操作和常见故障排除方法

    本系列文章会深入研究 Ceph 以及 Ceph 和 OpenStack 的集成: (1)安装和部署 (2)Ceph RBD 接口和工具 (3)Ceph 物理和逻辑结构 (4)Ceph 的基础数据结构 ...

  9. 第十篇 Replication:故障排除

    本篇文章是SQL Server Replication系列的第十篇,详细内容请参考原文. 复制故障排除是一项艰巨的任务.在任何复制设置中,都涉及到很多移动部件,而可用的工具并不总是很容易识别问题.Th ...

随机推荐

  1. CSS揭秘—打字动效(四)

    前言:     所有实例均来自<CSS揭秘>,该书以平时遇到的疑难杂症为引,提供解决方法,只能说秒极了,再一次刷新了我对CSS的认知 该书只提供了关键CSS代码,虽然有在线示例代码链接,但 ...

  2. datastream解析

    在EOS的eosiolib模块中有一个datasteam.hpp文件,它几乎实现了所有类型对字节流的转换,是一个非常强大的工具类,在这里对它的做一个简单的提取,也加强一下自己对它的理解.在下面的工程中 ...

  3. maven scope 以及依赖传递

    https://www.cnblogs.com/mxm2005/p/4947905.html

  4. Linux命令 查看Linux版本和是否联网

    1.查看Linux内核版本 1.1 $ cat /proc/version [heima01@heima01 ~]$ cat /proc/version Linux version 2.6.32-57 ...

  5. hdu5884

    #include <cstdio> #include <queue> #include <algorithm> #include <string.h> ...

  6. Sticky Footer的实现

    Sticky Footer即绝对底部,是一种常用的布局方式,页脚在内容区未超出窗口高度时一直保持在最底部显示,而超过窗口高度时则保持在内容区最底部. 有两种实现方法: 第一种:经典的实现方式 html ...

  7. Xamarin.Form的坑

    首先说到xamarin.Forms的安装,简直是坑+坑+坑,为什么呢,有些坑你完全意想不到,比如说你改名字后报错,比如说上份代码能运行,在这里就不能运行,具体先将坑说说吧 坑1 文件名,动不动就报什么 ...

  8. 使用PowerShell 获取azure image publisher offer sku 信息

    使用azure powershell 获取指定区域的可用镜像 publisher offer sku信息 param ( [parameter(Mandatory = $false)] $Locati ...

  9. 枚举转List

    将枚举值转为list (name,value) 的形式 /// <summary> /// 获取口味 /// </summary> /// <returns>< ...

  10. MySQL++简单使用记录.md

    #1.简介 MySQL++ is a powerful C++ wrapper for MySQL’s C API. Its purpose is to make working with queri ...