Linux误删所有内核,恢复内核的解决办法

  1. 前言

我用df -h命令查看磁盘使用情况的时候发现,系统根目录空间已经比较小了,于是我就使用clean命令对系统内核进行清理,一不小心,就把所有的内核删除了,你很有可能也是我的这种经历,非常的崩溃.好了,我就不再废话了,让我们来看一下究竟如何修复.

修复方法

  • 使用u盘做一个ubuntu(你当前的系统发行版本)启动盘 参照:https://www.linuxidc.com/Linux/2016-04/130520.htm 意思就是使用制作工具,用u盘做一个系统,经常折腾系统的肯定知道怎么做,可以使用文章中的软件,也可以使用软碟通(我一般都是用这个).注意,只需要做成这个启动盘就可以了,不需要安装.
  • 做好后,使用u盘启动系统,选择try ubuntu ,试用ubuntu
  • 同时按下ctrl+alt+t,启动终端,我们所有的操作都是在终端中完成的.
  • 使用命令:
sudo fdisk -l

查看你原来Linux系统根目录所在的位置,如果你实在是不知道究竟哪个 是你的根目录所在的位置,你那么你可以挨个挂载一下,至于挂载是什么,我很快就会介绍到.如果你知道,那么请你记录下这个根目录所在的位置,如/dev/sda7

  • 如果你并不知道你根目录的位置,那么可以这样做,如果你知道,也可以试试,肯定用得上
mount /dev/sda7 /mnt

也就是把这个磁盘分区/dev/sda7挂载到/mnt目录下面 用命令

ls /mnt

如果出现的是你熟悉的根目录的样子,那么就挂载对了,如果不是,那么请按照如上步骤重新挂载 这里还需要说明一点,如果你的/boot目录或者其他的目录,比如/var(非常重要),原来都是安装在其他分区,而不是根目录所在的分区,那么你也需要记录下这些目录所在的分区,也要用的上.使用同样的挂载方法测试,好了,当你知道你原来系统所有文件分区的位置后,那么我们就能继续了.

  • 使用命令进行挂载 说明:我的/boot目录在/dev/sda3,/var目录在/dev/sda9 , /目录在/dev/sda7,好了,有了这些内容,就能继续了,分别输入如下的命令,基本上就能完成了,需要注意的是,下面这些命令都是需要使用管理员权限的,也就是在每条命令前面加上sudo
    mount /dev/sda7 /mnt
    mount /dev/sda3 /mnt/boot
    mount /dev/sda7 /mnt/var
    mount --bind /dev /mnt/dev
    mount --bind /sys /mnt/sys
    mount --bind /proc /mnt/proc

    上面的命令都是挂载或者链接命令,简单的讲,上述命令的作用就是后面的路径可以使用前面路径的内容了.

  • 拷贝dns解析(网络配置文件)
    cp /etc/resolv.cnf /mnt/etc/resolv.conf

    这十分重要,否则你是无法链接网络的

  • 进入挂载的系统
    chroot /mnt
  • 更新系统内核 这步算是最为核心的内容了,修复靠的就是这个
apt-get install linux-image-generic
  • 安装完成后,更新一下grub文件
update-grub

安装完成 为了安全着想,我们需要卸载掉刚刚挂载上去的分区

exit
umount /boot
umount /dev
umount /sys
umount /var
umount /proc
umount /mnt
  • 最后,拔掉启动盘,重新启动系统,你就能看到你可爱的内核又回来了

教训

以后在不了解命令的功能的情况下,就不要混乱使用命令了,非常危险,数据丢失什么额都是家常便饭.....

结语

感谢您的阅读,欢迎指正博客中存在的问题,也可以跟我联系,一起进步,一起交流!

微信公众号:进击的程序狗 邮箱:roobtyan@aliyun.com 个人博客:http://roobtyan.cn 扫描下面的二维码关注我吧,你将收获到意想不到的东西哟……

给大家准备了一份非常棒的JAVA的视频教程,从JAVA基础一直到JAVAWEB,还有非常强大的项目实战。

就在我的微信公众号里,回复java就可查看,免费的呦!

这里写图片描述

发表评论

电子邮件地址不会被公开。 必填项已用*标注