记一次CentOS7内核kernel的删除重装

人生在于折腾,学习Linux更要多多折腾。在一次折腾中吸取教训,更易于记忆。

今天我们来折腾Linux的内核:删除系统内核后,通过光盘进行kernel的重安装。

友情提示:请在虚拟机环境进行,折腾前务必做好系统快照。慎重!

环境

本次系统环境是如下图:

记一次CentOS7内核kernel的删除重装


删除

我们先到/boot目录下,强制删除kernel文件:
记一次CentOS7内核kernel的删除重装

重启PC,此时系统报错找不到内核文件,无法登录系统。
记一次CentOS7内核kernel的删除重装


恢复

由于系统已无法启动,我们需要CentOS光盘进入救援模式,进行恢复操作,具体步骤:

1. 光盘启动系统

关闭虚拟机,在虚拟机设置里,设置ISO映像文件。

记一次CentOS7内核kernel的删除重装

设置开机进入BIOS,以方便我们修改first boot

wKioL1e9BdrydMKOAAB7NGSLCH0946.png

设置光盘启动,(方向键将光标移动熬CD-ROM Drive,用“-”“+”键实现选项移动,完成修改后,按F10保存,并开机)
记一次CentOS7内核kernel的删除重装

    2. 进入救援模式

此时,我们开机已经能启动ISO的界面了,选择Troubleshooting

记一次CentOS7内核kernel的删除重装

选择进入救援模式

记一次CentOS7内核kernel的删除重装

选择继续:

记一次CentOS7内核kernel的删除重装

按Enter键进入shell命令行:

记一次CentOS7内核kernel的删除重装

    3. 救援模式命令行重装kernel

这里我们需要注意的是:

此时我们进入的是光盘加载到内存的系统,此时的文件系统,是光盘映像加载的。

而我们需要恢复的是安装在硬盘里的CentOS系统,因此,我们要先命令df查看当前磁盘分区空间:

记一次CentOS7内核kernel的删除重装

这时,我们可以看到光盘路径是 /run/install/repo

        需要恢复的CentOS路径是 /mnt/sysimage

我们需要的操作就是从光盘里调出rpm包,进行安装:(注意:需要指定安装路径 –root=/mnt/sysimage)

sh-4.2# rpm -ivh /run/install/repo/Packages/kernel-3.10.0-327.el7.x86_64.rpm --root=/mnt/sysimage/

wKioL1e9ECLhvHvAAAAXvkelgGg610.png

读条完成,当命令行提示符出现后,表示我们已经安装完成,就可以重启PC了:(需要BIOS修改取消光盘,恢复硬盘启动)

wKiom1e9EO-B8fNhAAAUsQT44EM575.png

wKioL1e9EQjhuwVKAAAJiAz1Ygs315.png

看到了熟悉的界面,瞬间成就感+1。


总结

通过本例,为我们在内核遭到破坏时候,提供了重装恢复的方法,值得注意的是,当我们进入挂载模式时候,要考虑当前文件系统和需恢复的系统的区别,rpm安装kernel时,要进行安装路径的指定(–root选项。)


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

(1)
上一篇 2016-08-24 21:22
下一篇 2016-08-24 21:23

相关推荐

  • 马哥教育网络班22期+第9周课程练习

    1、写一个脚本,判断当前系统上所有用户的shell是否为可登录shell(即用户的shell不是/sbin/nologin);分别这两类用户的个数;通过字符串比较来实现;            [root@test ~]# vim&nbsp…

    Linux干货 2016-10-24
  • 第四周作业

    1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。 [root@wlm ~]# useradd tuser1 [root@wlm ~]# cp -r etc/skel/ /home/tuser1/…

    Linux干货 2016-11-21
  • linux树状结构

    linux 目录结构   /:根目录,一般根目录下只存放目录,不要存放文件,/etc、/bin、/dev、/lib、/sbin应该和根目录放置在一个分区中 /bin:/usr/bin:可执行二进制文件的目录,如常用的命令ls、tar、mv、cat等。 /boot:放置linux系统启动时用到的一些文件。/boot/vmlinuz为linux的内核文…

    Linux干货 2016-08-05
  • SSH会话劫持实现端口转发

    在进行渗透测试时,我们有时候会碰到搭建的测试环境、产品服务器、DMZ或者其他类似的机器群的情况,这时我们完全可以把它们看作跳板。这些系统被设计成对外交互的接口,这时候我们考虑对其他域里的用户进行SSH会话劫持是个不错的选择。 那么如果你拥有了某一个跳板的控制权限,想要通过另一个域的用户对远程域进行访问会怎么办呢?当然,这时候你是没有密码、密钥的,你不能抛弃二…

    系统运维 2015-03-23
  • N25第二周

      1,Linux上的文件管理命令都有哪些,其常用的使用方法及其相关示例演示。        文件查看类命令:cat, tac, head, tail, more, less           分屏…

    Linux干货 2016-12-12
  • PHP SOCKET编程

    1. 预备知识        一直以来很少看到有多少人使用php的socket模块来做一些事情,大概大家都把它定位在脚本语言的范畴内吧,但是其实php的socket模块可以做很多事情,包括做ftplist,http post提交,smtp提交,组包并进行特殊报文的交互(如smpp协议),whois查询。这些都是比较常见…

    Linux干货 2015-04-10