Linux误删所有内核,恢复内核的解决办法
前言
我用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.conf /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@outlook.com
个人博客:http://roobtyan.cn
扫描下面的二维码关注我吧,你将收获到意想不到的东西哟……
Linux误删所有内核,恢复内核的解决办法的更多相关文章
- Linux提示no crontab for root的解决办法
Linux提示no crontab for root的解决办法 安装crontab:yum install crontabs 说明:/sbin/service crond start //启动服务/s ...
- Hyper-V下的Linux虚拟机网卡丢失问题原因及解决办法
Hyper-V下的Linux虚拟机网卡丢失问题原因及解决办法 虚拟化大势所趋 公司推行了虚拟化,全部用的是Microsoft Windows 2008 R2 Enterprise with Hyp ...
- 分享:Windows2008重启后提示系统恢复选项的解决办法
如题:WINdows2008服务器. 重启后提示系统恢复选项的解决办法 使用windows 2008后,不能启动的问题,重启后出现 修复系统选项 采用下面帖子中的部分命令搞定之. 我自己是直接使用:选 ...
- linux和windows下TIME_WAIT过多的解决办法
http://www.51testing.com/html/48/202848-249774.html linux和windows下TIME_WAIT过多的解决办法 http://m.sohu.com ...
- ubuntu网络重启后或主机重启后,/etc/resolv.conf恢复原样的解决办法
ubuntu网络重启后或主机重启后,/etc/resolv.conf恢复原样的解决办法 /etc/resolv.conf中设置dns之后每次重启该文件会被覆盖,针对这种情况找了一些个解决方法 防止/e ...
- linux No module named yum错误的解决办法
linux No module named yum错误的解决办法 肯定是yum的版本与当前python的版本不一致造成的 <pre>所以修改yum的配置,修改文件: vim /usr/bi ...
- Linux配置Tomcat8080端口 远程无法访问解决办法
是因为Linux的防火墙没有开放8080端口 解决办法: /sbin/iptables -I INPUT -p tcp --dport 8080 -j ACCEPT #开启8080端口 /sbin/ ...
- Centos7升级内核后无法启动解决办法
前言 这个问题存在有一段时间了,之前做的centos7的ISO,在进行内核的升级以后就存在这个问题: 系统盘在板载sata口上是可以正常启动新内核并且能识别面板硬盘 系统盘插在面板口上新内核无法启动, ...
- Linux误删文件后恢复数据
在Linux下,基于开源的数据恢复工具有很多,常见的有debugfs.R-Linux.ext3grep.extundelete等,比较常用的有ext3grep和extundelete,这两个工具的恢复 ...
- Linux服务器 大量的CLOSE_WAIT、TIME_WAIT解决办法
http://itindex.net/detail/50213-%E6%9C%8D%E5%8A%A1%E5%99%A8-time_wait-close_wait http://itindex.net/ ...
随机推荐
- 2-10 就业课(2.0)-oozie:3、安装2
第七步:修改oozie-site.xml cd /export/servers/oozie-4.1.0-cdh5.14.0/conf vim oozie-site.xml 如果没有这些属性,直接添加进 ...
- SelectList类的构造函数
SelectList类的构造函数 2016年05月23日 17:29:52 FrankyJson 阅读数 272 标签: MVC函数 更多 个人分类: MVC SelectList 构造函数 (I ...
- taro中自定义tabbar实现中间图标凸出效果
遇到的一个需求是在tabbar上有一个凸起的小图标, 但是微信自带的tabbar是没有这个效果的, 无奈,只能使用自定义tabbar,查找了多方文档后发现大多是原生小程序实现, 关于taro文档的少之 ...
- DB2常用sql语句
转 DB2 提供了关连式资料库的查询语言sql(structured query language),是一种非常口语化.既易学又易懂的语法.此一语言几乎是每个资料库系统都必须提供的,用以表示关连式的操 ...
- 023、MySQL取文本长度取字符串长度
#取文本长度,一个文字算1长度 SELECT CHAR_LENGTH('田攀520'); #UTF-8的数据库,值为5 #取文本长度,汉字算多个字符,数字和英文算一个字符 SELECT LENGTH( ...
- 微信小程序提示:https://api.map.baidu.com 不在以下 request 合法域名列表中
如果你想利用百度地图API定位来获得当前位置,但却出现了如标题所示问题,那么请接着看: 1.首先我们需要在百度地图开放平台(https://lbs.baidu.com/apiconsole/key?a ...
- maven详解 之仓库
Maven仓库分类 MAVEN仓库分类 Maven仓库分为:本地仓库+远程仓库两大类 远程仓库又分为:中央仓库+私服+其它公共远程仓库 1,在Maven中,任何一个依赖.插件或者项目构建的输出,都 ...
- oracle进入CDB
第一步:使用sys登陆 CONN sys/change_on_install AS SYSDBA; 第二步:查看现在的容器名称 SHOW con_name; 第三步:改变容器为PDB ALTER SE ...
- Linux netfliter 架构
netfliter 简介 netfilter是在Linux 2.4.X内核引入的一个子系统,它提供了一个抽象的.通用框架,这个框架提供了一整套的钩子函数的管理机制.包括钩子函数的原型定义,注册,注销等 ...
- 用Git从本地上传文件到GitHub
这几天忙于抢救崩掉的博客,没空更新GitHub上PAT的代码,手动一个个传太慢了,所以我去偷学了一下给Git传文件到GitHub,非教学教程没有图文,有几个前提 你得有github账号,没有就去注册吧 ...