9月9日,系统启动文件恢复与内核编译

1、破解root口令,并为grub设置保护功能

进入grub界面,输入a键,在输入1,进入单用户界面,进入系统后修改密码。

blob.png

2、破坏本机grub stage1,而后在救援模式下修复之

blob.png

3、删除vmlinuz和initramfs文件,无法启动,恢复之

(1)安装kernel内核

blob.png

(2)光盘寻找内核,在复制到/boot目录下,在修改成对应的,系统会重启两次

blob.png

(3)通过网络进行恢复内核文件(1救援模式设置网络)(2)网络拷贝内核文件

blob.png

blob.png

4、删除/etc/fstab和/boot目录的所有文件,并恢复之,多破坏些,方便学习

(1)破坏机器
#umount /boot                     —卸载/boot分区
#rm -rf /boot                           —删除/boot目录(boot目录下包含所有GRUB有关的文件)
#rm -rf /etc/inittab                 —删除init表(此文件定义了系统运行级别和脚本)
#rm -rf/etc/rc.d/rc.sysinit      —删除init运行级别脚本文件
#rm -rf/etc/rc.d/rc.local         —删除开机脚本文件
#mv /etc/fstab/etc/fstab.bak    —备份系统挂载表fstab文件(此文件记录了linux分区信息)
#sync               —将系统缓冲区的内容写入硬盘(在Linux系统中,当数据需要存入磁盘时,通常会先放到缓冲区内,等到适当的时刻再写入磁盘,如此可提高系统的执行效率)
#reboot

blob.png

(2).查看磁盘或卷信息(有卷时首先要激活卷vgchange -ay),在把卷或磁盘挂载,确定分区情况(确定根后,
可以查看/etc/mtab,不一定管用)

blob.png

(3)编写/etc/fstab文件,重启系统(必须重启加载配置,不然基本命令都用不了)

blob.png

(4)格式化新硬盘

blob.png

(5)切换根(chroot /mnt/sysimage),挂载新硬盘,安装内核与grub,完成/boot目录恢复

blob.png

(6)编写/boot/grub/grub.conf与将/boot挂载信息写入/etc/fstab

blob.png

(7).恢复操作系统配置文件,重启系统    

blob.png

5、增加新硬盘,在其上制作能单独运行kernel和bash的系统

(1)创建磁盘,进入系统,给硬盘分区,并格式磁盘。在创建挂载点,挂载硬盘(boot,/分区)

blob.png

(2)新/boot分区安装grub,编写grub引导信息(/mnt/boot/grub/grub.conf),需要注意,新/boot磁盘在本机为/dev/sdb,但是单独做别系统时,磁盘boot磁盘做为系统的第一块磁盘

blob.png

(3)创建新磁盘根目录文件,拷贝必要的命令与所依赖的库文件,即完成新磁盘操作系统设置

blob.png

(4)创建新虚拟机,并将磁盘移除,将做好/boot与根的磁盘文件复制至新虚拟机,并将磁盘添加至虚拟机,启动系统,即完成实验

blob.png

6、编译安装kernel,启用支持ntfs文件系统功能

 (1):将内核(linux-3.18.41.tar.xz)上传至虚拟机,解压内核至/usr/src  :tar     -xvf    linux-3.18.41.tar.xz   -C   /usr/src/编译内核,可以参考(cat /boot/config-3.10.0-327.el7.x86_64)

blob.png

(2)启用配置config工具,进入图形化界面

blob.png

(3)make  menuconfig图形配置内核说明

blob.png

(4)编译指定核心数,编译内核

blob.png

(5).make modules_install:安装模块

blob.png

(6)make install :安装内核相关文件,重启系统,选择内核,即完成实验
make install :安装内核相关文件
安装bzImage为/boot/vmlinuz-VERSION-RELEASE
生成initramfs文件
编辑grub的配置文件

blob.png

(7)查看系统信息

blob.png

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

(0)
maoxiongmaoxiong
上一篇 2016-09-13
下一篇 2016-09-13

相关推荐

  • Apc缓存Opcode

    1、PHP执行 PHP的运行阶段也分成三个阶段: Parse。语法分析阶段。 Compile。编译产出opcode中间码。 Execute。运行,动态运行进行输出。                            …

    Linux干货 2015-04-10
  • Linux用户与权限管理

    由于Linux是多用户、多任务系统,出于一些需要,当我们创建的文件希望对一部分用户开放,对一部分用户隐藏的时候应该怎么办呢?这样的话,就需要涉及到Linux系统中对用户以及对文件权限的管理。 一、相关文件 在Linux中,一切配置文件都是以文本文档的方式来保存的,同样用户的信息也保存在系统的一些文件中,其位置为/etc/passwd。此文件只有root用户具…

    Linux干货 2016-08-05
  • Cent OS 6 编译方式安装LAMP

    细节要求: (1) 三者分离于三台主机; (2) 一个虚拟主机用于提供phpMyAdmin;另一个虚拟主机用于提供wordpress; (3) PHP使用FastCGI+xcache; (4) httpd使用非prefork的mpm模式; 一、CentOS6环境准备 1、OS(CentOS6.8)下开发环境包的安装,编译安装程序包需要使用 #yum grou…

    Linux干货 2017-02-24
  • select和case用法

    一、作业 1、斐波那契数列又称黄金分割数列,因数学家列昂纳多·斐波那契以兔子繁殖为例子而引入,故又称为“兔子数列”,指的是这样一个数列:0、1、1、2、3、5、8、13、21、34、……,斐波纳契数列以如下被以递归的方法定义:F(0)=0,F(1)=1,F(n)=F(n-1)+F(n-2)(n≥2) 写一个函数,求n阶斐波那契数列 2、汉诺塔(又称河内塔)问…

    Linux干货 2016-08-21
  • sudo——让普通用户更灵活

    sudo命令 1、sudo能够授权指定用户在指定主机上运行某些命令。如果未授权用户尝试使用sudo ,会提示联系管理员 2、sudo可以提供日志,记录每个用户使用sudo 操作 3、sudo为系统管理员提供配置文件,允许系统管理员集中地管理用户的使用权限和使用的主机 4、sudo 使用时间戳文件来完成类似“检票”的 系统,默认存活期为5 分钟的 “入场券” …

    Linux干货 2016-09-25
  • 马哥教育网络班N22期+第三周课程练习

    1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。    who | cut -d " " -f 1 | sort | uniq 2、取出最后登录到当前系统的用户的相关信息。    last | head -n 1  3、取出当前系统上被用户当作其默…

    Linux干货 2016-09-08