grub知识与故障排除

知识点回顾

at 任务的存放位置:/var/spool/at/

crond 任务存放位置:/var/spool/cron/username

查看服务有没有运行

centos6:  service  atd  status   

chkconfig –list atd

chkconfig atd on 不指定级别,默认为23,4,5

centos7:  systemctl  status atd

grub.conf文件解读

图片1.png 

#开头都是注释信息

default=0表示默认的启迪条目,假如同时有多个操作系统,0表示定义的第一个title系统,1表示定义的第二个title系统。

timeout=5表示可供选择的等待时间,如果超过5秒,则使用默认的启动条目default定义的进行启动。

splashimage=(hd0,0)/grub/splash.xpm.gz 表示启动时背景图片信息

hiddenmenu 表示启动时是否显示菜单,默认情况下是不显示菜单信息,如果想要显示菜单,可以将该配置注释即可,所谓显示菜单就是下面的信息。t

title:定义操作系统的名称

root:表示内核文件存放的位置,这里指定的是分区位置,而非根目录。

kernel:内核的名称以及一些启动时的核心参数,由于启动过程中需要挂载根目录,因此就需要指定根目录所在的分区。rhgb表示色彩显示,quite表示静默模式加载内核。

initrd:就是前面提到的initrd,虚拟文件系统。

作业

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

   破解口令:首先,切换至单用户模式,init 1切换。第二步,Esc进入菜单选项。按下a键,并输入 single。第三步,passwd即可

图片2.png 

在第一个title上添加passwd –md5 主要用于保护编辑功能

在某个title内添加passwd –md 主要用于保护内核

/etc/grub.conf中编辑password –md5 ******** 即可

图片3.png 

如果有人想给密码,那么他会进入如下模式时就无法更改内核的配置信息了。

图片4.png 

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

答:(1)破坏grub stage1的阶段,可以使用 dd if=/dev /zero of=/dev/sda bs=1 count=1即可照成一阶段的破坏。

 2.而后,进入boot菜单

图片5.png 

3)选择CD-ROM进入救援模式

4)在命令行:chroot  /mnt/sysimage

 5fdsik -l /dev/sda

6grub -install /dev/sda(安装grub引导程序到磁盘/dev/sdaMBR扇区)

 7exit退出。

或者不进行第五步,换成如下的修复方式

grub

root(hd0,0)

setup(hd0)

quit

3、删除vmlinuzinitramfs文件后无法启动,两种方法恢复之

答:删除这两个文件之后会出现如下的错误

图片6.png 

chroot /mnt/sysimage/

mount /dev/sr0 /mnt/cdrom

cd  isolinux/

ls -l vmlinuz

图片7.png 

用命令去生成.img的文件

图片8.png 

注意必须要在/mnt/sysimsge/boot中去生成initramfs的文件。等该文件生成完毕即可重启。

4、删除了/boot下的grub目录,恢复之

答:进入救援模式,使用grub-install /dev/sda 修复grub下的文件,只有一个不能修复,就是grub.conf这个配置文件,这个自己手动去写即可。

关键的几行如下

default=0

timeout=5

title centos6.8

kernel (hd0,0)/vmlinux-2.6.32.642.e16.x86_64  root=/dev /sda2

initrd (hd0,0)/vmlinux-2.6.32.642.e16.x86_64.imgs

5、删除/etc/fstab/boot目录的所有文件,并恢复之

答:删除了的/etc/fstab可以手动书写配置,

 mkdir /mnt/cdrom

mount /dev/sr0 /mnt/crom

rpm -ivh /mnt/cdrom/Packages/kernel-2.6.32-642.el6.x86_64.rpm –root=/mnt /sysimage/  –force (强制安装)

chroot /mnt/syscimage/

grub-install /dev/sda

cd /grub

vim grub.conf

 

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

(0)
上一篇 2016-09-13 15:19
下一篇 2016-09-13 15:19

相关推荐

  • DNS 正反向解析 主从配置

    我的环境是     192.168.1.130    主DNS      192.168.1.112    从DNS DNS 的安装包有bind bind-libs bind-utils 安…

    Linux干货 2016-01-05
  • sed– 用于筛选和转换文本的流编辑器

    sed 用于筛选和转换文本的流编辑器命令格式:sed [OPTION] {script} file选项       -n, –quiet, –silent 抑制模式空间的自动打印  echo -e “abc\ndef” | sed ‘p’ #输出 abc # abc # def # d…

    Linux干货 2017-08-15
  • mysql-proxy 读写分离

    1. 简介     mysql-proxy 是官方为此的一个测试,项目, 可以完成读写分离。但是项目目前还不是很成熟,这里仅作测试。  2. mysql-proxy安装部署 # wget http://downloads.mysql.com/archives/get/file/mysql-…

    Linux干货 2015-12-21
  • Linux磁盘阵列RAID以及mdadm实现软件RAID

    一、概要 RAID(磁盘阵列):由众多价格较便宜的磁盘,组合成一个容量巨大的磁盘组,利用个别磁盘提供数据所产生加成效果来提升整个磁盘的性能。 二、RAID的级别及其优缺点 读性能提升 写性能提升 容错能力 组合后空间大小 RAID0 上升 上升 无 n*单个磁盘大小 RAID1 上升 下降 有(最多坏一块磁盘) 1*单个磁盘大小 RAID4 上升 上升 有(…

    2015-04-20
  • Linux基础指令(1)

    1.Linux上的文件管理类命令都有哪些,其常用的使用方法及相关实例演示  文件管理工具:cp mv rm cp命令 : 单源复制: cp [option]… [-T]  SOURCE DEST     -bash-4.1# …

    Linux干货 2016-11-09
  • N22-第九周作业

    1、写一个脚本,判断当前系统上所有用户的shell是否为可登录shell(即用户的shell不是/sbin/nologin);分别这两类用户的个数;通过字符串比较来实现; #!/bin/bash # declare -i log_user declare -i notlog_user while read&n…

    Linux干货 2016-10-24