关于grub的一些实验

关于grub的一些实验

关于grub的一些实验

手动引导进入系统

也就是写 grub.conf文件
关于grub的一些实验

改grub界面图片

1、进入/root/grub目录发现里面有很多东西,查看grub.conf可以知

关于grub的一些实验

2、我们查看下图片的格式

关于grub的一些实验
这是一个gzip压缩的图片文件

用vim可以查看开头
关于grub的一些实验
经查得知这是一个640*480的文件而且只支持14色

3、自定义图片

先照一张图片用工具改成这种想要的格式
关于grub的一些实验
关于grub的一些实验

改配置文件的图片名称也可以达到目的

4、重启就行了

关于grub的一些实验

grub 1 1.5 2阶段被删除的修复(此方法适用于删除 /root/grub 目录)

stage1 破坏
dd if=/dev/zero of=/dev/sda bs=1 count=446
stage1.5 破坏
dd if=/dev/zero of=/dev/sda bs=512 count=2 seek=1

1、进入光盘救援

修复grub-install /dev/sda
关于grub的一些实验

如果,/boot/grub 目录的内容没有被破坏可以用一下命令修复

2、同样进入光盘救援模式

切根 chroot /mnt/sysimage
进入grub命令修复
关于grub的一些实验

删除/boot,恢复

rm -rf /boot

光盘启动,进入rescue模式

mkdir /mnt/cdrom

mount /dev/cdrom /mnt/cdrom 挂载光盘

rpm -ivh /mnt/cdrom/Packages/kernel-2*.rpm –root=/mnt/sysimage –replacepkgs|force (二选一)

chroot /mnt/sysimage

grub-install /dev/sda 修复grub目录

vim /boot/grub/grub.conf 写grub的配置文件

关于grub的一些实验

删除init文件(/sbin/init)

是挂载根之后运行的程序
关于grub的一些实验

这时候命令什么的都不支持,没办法只能重启
关于grub的一些实验

关于grub的一些实验

删除 /boot下的vmlinuz-*.文件和 initramfs-*.img文件

1、进入救援模式

2、挂载光盘 把本版本对应的vmlinuz*拷贝过来

3、用命令生成initramfs-*.img文件

切换到根 chroot /mnt/sysimage
mkinitrd /boot/initramfs-uname -r.img uname -r

关于grub的一些实验

或者直接从别的相同的机器上边把这两个文件拷贝过来

scp 10.1.0.1(ip地址):/boot/vmlinuz* /boot

scp 10.1.111.11:/boot/initramfs* /boot

注意:从光盘中拷贝的vmlinuz文件可能不带版本号,要把grub.conf改一下

如果不成功可能是selinux的问题  在进入时可以按e 编辑kernel文件 在之后加入 selinux=0

删除/boot 和/etc/fstab的恢复

注意是先修复/etc/fstab文件

rm -rf /boot /etc/fstab
光盘启动,进入rescue模式
检查/
blkid;fdisk -l(查看文件系统,根和boot分别在那个分区中)
mkdir /mnt/sda2 (创建几个文件进行挂载 找到/所在的那个分区并挂载上)
mount /dev/sda2 /mnt/sda2(把根挂载上)
vi /mnt/sda2/etc/fstab(写配置文件的基本配置信息 )

/dev/sda1 /boot ext4 defaults 1 1
/dev/sda2  /      ext4 defaults 1 2

reboot

光盘启动,进入rescue模式,挂载/mnt/sysimage (下边的就一样了)

mkdir /mnt/cdrom
mount /dev/cdrom /mnt/cdrom
chroot /mnt/sysimage
rpm -ivh /mnt/cdrom/Packages/kernel-2*.rpm  –replacepkgs|force
grub-install /dev/sda

vim /boot/grub/grub.conf

default=0
timeout=3
title wanglinux
root (hd0,0)
kernel /vmlinuz.... root=/dev/sda2
initrd /initramfs

逻辑卷情况下,删除/boot 和/etc/fstab,恢复之

和上边差不多,只不过要先启用vg 用lvscan查看文件系统的挂载情况!

rm -rf /boot /etc/fstab

光盘启动,进入rescue模式

检查

lvscan 查看lv的分区

vgchange -ay 启用vg

mount /dev/vg0/root /mnt/sysimage 挂载根所在的分区

vi /mnt/sysimage/etc/fstab

/dev/sda1 /boot ext4 defaults 1 1 
/dev/vg0/root  /      ext4 defaults 1 2
/dev/vg0/usr /usr 
/dev/vg0/var /var

reboot
重启看下次是否能自动找的各个分区

光盘启动,进入rescue模式,挂载/mnt/sysimage

mkdir /mnt/cdrom
mount /dev/cdrom /mnt/cdrom
chroot /mnt/sysimage
rpm -ivh /mnt/cdrom/Packages/kernel-2*.rpm  –replacepkgs|force
grub-install /dev/sda

vim /boot/grub/grub.conf

    default=0
    timeout=3
    title wanglinux
    root (hd0,0)
    kernel /vmlinuz.... root=/dev/vg0/root
    initrd /initramfs .

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

(0)
qzxqzx
上一篇 2016-09-16
下一篇 2016-09-16

相关推荐

  • bash功能特性六 bash操作环境

    一、bash查找命令的顺序     1、以相对路径或绝对路径执行的命令;     2、由alias找到该命令来执行;     3、由bash内置的命令来执行;     4、通过$PATH这个变量的顺序找到的第一个命令来执…

    Linux干货 2015-04-22
  • Nginx的简单配置和简单实验..

    yum install nginx #安装Nginx,安装包在epel源中 systemctl start nginx.service #启动服务 #实验:配置一个虚拟主机 #先给一个网页文件 ~]#mkdir /data/nginx/vhost1 -pv ~]#vim /data/nginx/vhost1/index.html <h1>Ngin…

    Linux干货 2017-06-19
  • 第一周 N28

    作业一

    2017-12-03
  • 马哥教育网络第21期-第十四周课程练习

    系统的INPUT和OUTPUT默认策略为DROP; iptables -P INPUT DROP iptables -P OUTPUT DROP 1、限制本地主机的web服务器在周一不允许访问;新请求的速率不能超过100个每秒;web服务器包含了admin字符串的页面不允许访问; web服务器仅允许…

    Linux干货 2016-12-26
  • 细节决定成败–空格的巨大作用以及正则表达式中元字符的转义

    字符串的条件判定 1.字符串判定 一定要用双[[ ]] 2.字符串判定=~默认支持扩展正则表达式,这里注意双引号的使用 仅仅做是否包含时,有无双引号无区别。 但是利用其他扩展表达式时 双引号一定要去掉 锚定示例 多条件判定时-o -a使用时,不能使用双中括号 空格有无的差别 !的使用细节 !到目前为止 有两种意义 条件判定取反 历史命令的调用 两者的使用却别…

    2017-03-19
  • Linux的程序包管理,RPM,yum及编译安装简介

    Linux的程序包管理,RPM,yum及编译安装简介   Linux的程序包,指的是ELF格式的二进制应用程序文件所组成的软件包。它一般由二进制文件、库文件、软件配置文件及帮助文件等组成。而对这些包进行管理的工具,主流分为两种,在debian上,用的是apt-get管理deb包;在redhat上,主要用rpm作为软件包管理工具。在这里,我简单的介绍…

    Linux干货 2016-05-29