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 11:17
下一篇 2016-09-13 11:17

相关推荐

  • 马哥教育网络20期+第四周练习博客

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

    Linux干货 2016-08-02
  • 用户管理、三种权限、三种特殊权限的使用

    用户管理、三种权限、三种特殊权限的使用 一、用户管理 1、软链接:ln  -s  相对于软链接的路径/绝对路径   软链接文件    硬链接:ln  相对路径原文件   硬链接文件 2、getent的使用    gentent p…

    系统运维 2016-08-05
  • CentOS、RHEL及Linux的关系

    什么是Linux?    Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。Linux存在着…

    Linux干货 2016-01-14
  • 曲径通幽处,禅房花木深—-bash禅意脚本

    编程基础 程序:指令+数据 程序编程风格: 过程式:以指令为中心,数据服务于指令 对象式:以数据为中心,指令服务于数据 shell程序:提供了编程能力,解释执行 编程基本概念 编程逻辑处理方式: 顺序执行 循环执行 选择执行 shell编程:过程式、解释执行 编程语言的基本结构: 数据存储:变量、数组 表达式: a + b 语句:if shell脚本基础 s…

    Linux干货 2016-08-12
  • 权限解析

    一、文件权限        用户的创建的每个文件,都有自己特定的属性信息,比如文件类型,文件的权限,文件的所有者和所属组,以及文件的修改日期等属性组成。        文件的权限即是指文件本身赋予了用户什么样的权力,也就…

    2017-05-30
  • HTTP详解(1)-工作原理

    1. HTTP简介          HTTP协议(HyperText Transfer Protocol,超文本传输协议)是用于从WWW服务器传输超文本到本地浏览器的传送协议。它可以使浏览器更加高效,使网络传输减少。它不仅保证计算机正确快速地传输超文本文档,还确定传输…

    Linux干货 2015-04-04