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

相关推荐

  • N25第1周作业

    1.计算机的组成及功能 地址:博客园http://www.cnblogs.com/qingyangzi/p/6133274.html 2.linux主要的发行版及其区别和联系 地址:博客园http://www.cnblogs.com/qingyangzi/p/6135801.html 3.linux哲学思想 地址:博客园http://www.cnblogs.…

    Linux干货 2016-12-05
  • 第九周作业

    1、写一个脚本,判断当前系统上所有用户的shell是否为可登录shell(即用户的shell不是/sbin/nologin);分别这两类用户的个数;通过字符串比较来实现; 2、写一个脚本     (1) 获取当前主机的主机名,保存于hostname变量中;     (2) 判断此变量的值是否为loc…

    2017-04-20
  • iptables之nat

    NAT网络地址转换SNAT:修改IP报文中的源IP地址 本地向互联网请求让本地网络中的主机可使用统一地址与外部通信,从而实现地址伪装请求:修改源IP,如果修改则由光梨园定义响应:修改目标IP,由nat自动根据会话表中追踪机制实现相应修改DNAT:修改目标地址转换 外网服务器向其他客户端请求请求:由外网主机发起,修改其目标地址,由管理员定义相应:修改源地址,但…

    2017-11-12
  • corosync+pacemaker对mariadb实现高可用

    corosync+pacemaker对mariadb实现高可用 利用nfs共享存储,导出一个目录作为mariadb的数据目录,然后利用corosync+pacemaker对mariadb进行高可用 1、实验环境 2、实验前的分析 利用nfs导出目录作为mariadb的共享目录,要确保各个mariadb节点对该目录具有写权限,也就是要确保nfs服务器上有一个U…

    Linux干货 2016-11-24
  • SSH协议详解

    OpenSSH 一、 前言 使用SSH可以在本地主机和远程服务器之间进行加密地传输数据,实现数据的安全。而OpenSSH是SSH协议的免费开源实现,它采用安全、加密的网络连接工具代替了telnet、ftp等古老明文传输工具。 SSH(Secure Shell)是建立在应用层和传输层基础上的安全协议。SSH是目前较可靠,专为远程登陆会话和其他网络服务提供安全性…

    Linux干货 2016-12-16
  • N26-博客作业-week4

    1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。 ~]# cp -r /etc/skel /home/tuser1~]# chmod -R 700 /home/tuser1 2、编辑/etc/group文件,添加组hadoop。 ~]# echo “hadoop…

    Linux干货 2017-02-26