Boot目录下内容丢失导致系统无法启动

Boot目录下内容丢失导致系统无法启动


1477241143577259.jpg笔者朋友近期在一次学习过程中不慎将虚拟机中boot目录下内容丢失,导致系统无法启动。当然此前他并不知道是这样,只是应为莫名的弹出框报错所有导致系统无法启动。此后朋友将此故障告知笔者,笔者本身其实也是小白刚刚学习linux不就,但是对这些稀奇古怪的故障感觉很有兴趣,所以笔者就掉进坑里搞了好久才搞出来点眉目来。为了让更多学习linux的小白踩坑,笔者将故障处理过程写出来希望和在下一样的小白们少踩坑。下的不好大家别见怪哈。 

1、  事故出现原因

  1. 某天笔者朋友告知虚拟机内linux无法启动,原因不明。朋友告知莫名错误不知道发生什么。

2、  故障导致结果

  1. 启动无法启动,开机出现grub界面无法进入错误系统。

  2. 1477240721152247.jpg

3、  故障处理过程。

  1. 当笔者看到上图画面后就google搜索问题最后试着去尝试手动引导试试,可惜不幸的是发现根本找到不到内核文件,所以怀疑内核文件丢失。

QQ截图20161024002223.jpg

  b)既然找到了问题那就去解决了所以笔者准备进入救援模式看一下看看有什么搞头。下图第三项就是可以进入救援模式了别告诉我你不知道哈。

1477240808360003.jpg

   c)笔者本来是对进入救援模式的过程截图了的但是想想还是没有贴上来第一笔者承认自己有点懒。第二大家自由尝试下才能正在学到东西。还是那句话不懂的地方搞它一下就知道了。下图就是进入救援模式的样子了。

1477240842960310.jpg

d)笔者到了救援模式下就准备开始搞一下了。首先执行cd /mnt/sysimage (这条命令的大概意思就是切换到硬盘的根分区,实在不懂你懂的 google)

        cd /boot 下查看 我了个去 竟然什么都没有 ………………….

       好吧回归正题 既然boot目录的东西都丢了 那也就没什么好说的了

      直接将原来的内核卸载掉 虽然没什么东西了 笔者本这搞一下的想法就试试(注意:如果大家在生产环境中出现这种问题各位自己考虑一下吧  因为笔者的故障处理过程是在虚拟机中的,具体在实际环境中出现什么问题在下就不知道了,所以您还是自己掂量下吧。) 

1.png

      查看已安装的关于kernel的rpm包。然后执行rpm  –e kernel  –nodeps

      (如果执行不成功的话  rpm  -ekernel -2.6.32-642.el6.x86_64)

 e)好 ok 那么我们开始执行下一步 

     首先  mkdir /mnt/dvd 创建一个挂载点

       mount /dev/sr0   /mnt/dvd

     之后执行 rpm  –ivh /mnt/dvd/Packages/kernel-2.6.32-642.x86_64

    (如果小伙伴伴们在上一步手贱把所有的关于kernel 的rpm 都卸掉了的话那就执行  yum install     kernel*  -y  吧  如果不知道怎么使用配置yum还是自行google。)        

1477240895188461.png

    Ok 看到图大家知道了吧  boot下的文件已经有了 如果不理解没关系 只要知道有这些东西就行了。

 f) 下面就开始进入重要的一步了 就是 grub 这个东西暂且可以理解为引导文件。

    grub-install  /dev/sda 执行这条命令就好了(不懂看图。。)

         1477240940287491.png

     g) 现在就是最重要的一步了 就是手动写一个配置文件 grub.conf

      vim  grub.conf(记得是在 /boot/grub 目录下写  。。还有root= 后面内容自己 df -hT 看一下自己的名称 都不一样的。)    

1477240978951137.png

      ok 写完这个东西后 就可以了 。  重启就好了。(如果再次当中出现什么问题建议大家自己多搞搞慢慢就懂了)

        还有 最后有一点比较重要差点忘记写了  如果大家在启动中遇到下图这种问题建议大家会到救援模式下修改 /etc/sysconfig/selinux  就没事了。

        

1477241010794506.png

1477241038523008.png

      修改 SELINUX=disabled 就不会出现上图的情况了。

1477241067912254.jpg

     好了至此问题已经解决了。 如果你的系统出现这种情况照上面的方法是一下吧。(遇到问题搞它一下只好了。) 笔者再次希望能和在家一起学习linux 一起进步,有什么问题不妨一起研究一下。

 

        

 

 

原创文章,作者:秋季,如若转载,请注明出处:http://www.178linux.com/54007

(0)
秋季秋季
上一篇 2016-10-24 09:09
下一篇 2016-10-24 09:09

相关推荐

  • M20 – 1- 第三周博客(2):Linux用户、组

    一、Linux用户组详解 Linux系统中的每个用户都有一个用户组,系统能对一个用户组中的所有用户进行集中管理。不同Linux系统对用户组的规定有所不同,如Linux下的用户属于和他同名的用户组,这个用户组在创建用户时同时创建。用户组的管理涉及用户组的添加、删除和修改。组的增加、删除和修改实际上就对/etc/group文件的更新。 用户组(group)就是具…

    Linux干货 2016-08-05
  • 权限(用户、特殊、ACL)

    root权限(id=0) root无论在什么情况下都有rw权限,但是是否拥有x权限,要分情况: 第一,文件所有者和所属组都无x权限,root也无x权限; 第二,文件所有者和所属组二者任何一个有x权限,root就有x权限。 用户得到的权限 匹配顺序:文件所有者——文件所属组——其他人(从左到右) 用户访问文件,一旦按次序匹配成功,其获得的权限就是匹配选项所对应…

    Linux干货 2017-05-30
  • HAProxy基于KeepAlived实现Web高可用及动静分离

    前言 软件负载均衡一般通过两种方式来实现:基于操作系统的软负载实现和基于第三方应用的软负载实现。LVS是基于Linux操作系统实现的一种软负载,而HAProxy则是基于第三方应用实现的软负载。HAProxy相比LVS的使用要简单很多,但跟LVS一样,HAProxy自己并不能实现高可用,一旦HAProxy节点故障,将会影响整个站点。本文带来的是HAProxy基…

    Linux干货 2015-06-25
  • NFS实现共享wordpress

    实验环境 192.168.68.134 wordpress站点 nfs-server 192.168.68.144 nfs-client   实验要求 nfs server共享/var/www/html目录 nfs clinet挂载nfs-server共享的目录,部署wordpress   nfs server端 先部署wordpress…

    Linux干货 2017-10-21
  • jenkins+gitlab构建安卓自动编译环境

        因工作关系接触到接触到安卓自动编译环境,网上的资料都推荐了jenkins,因为第一次接触安卓和jenkins,踩了不少的坑,有总结才有进步。    gitlab环境之前已经安装完成可用,具体步骤另外详解吧。本例目标是在gitlab可用前提下,通过jenkins将git仓库的代码自行编译打包,生成可用的apk安装…

    Linux干货 2016-07-16
  • 条件判断、文件查找与压缩

    一、条件判断 1.条件选择if语句   选择执行:   注意:if语句可嵌套 (1).单分支if 判断条件:then   条件为真的分支代码fi (2).双分支if 判断条件; then   条件为真的分支代码else   条件为假的分支代码fi (3).多分…

    Linux干货 2016-08-15