RHEL54系统启动以及troubleshooting试验文档格式.docx
- 文档编号:22836166
- 上传时间:2023-02-05
- 格式:DOCX
- 页数:33
- 大小:998.46KB
RHEL54系统启动以及troubleshooting试验文档格式.docx
《RHEL54系统启动以及troubleshooting试验文档格式.docx》由会员分享,可在线阅读,更多相关《RHEL54系统启动以及troubleshooting试验文档格式.docx(33页珍藏版)》请在冰豆网上搜索。
default=0
timeout=5
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
titleRedHatEnterpriseLinuxServer(2.6.18-164.el5)
root(hd0,0)
kernel/vmlinuz-2.6.18-164.el5roroot=LABEL=/rhgbquietcrashkernel=128M@16M
initrd/initrd-2.6.18-164.el5.img
~
"
/boot/grub/grub.conf"
17L,619C
这个就是grub.conf文件的配置内容
读取grub的配置文件
关于grub.conf的配置说明
Default=0
默认情况下从第一个操作系统启动(0为第一个)
Timeout=5
如果在5s不做任何选择,则按默认系统启动
Splashimage=(hd0,6)/grup/splash.xpm.gz
系统启动时候的彩色图片
Hiddenmenu
隐藏菜单
TitleRedhatenterpriselinuxServer(2.6.18-164.el5)
描述
Root(hd0,0)
boot分区所在的位置
Kernel/vmlinuz-2.6.18.168-el5roroot=LABEL=/1rhgbquiet
加载kernel以只读的方式挂载根分区
参数rhgb:
使用图形化启动quiet:
提示报错
Initrd/initrd-2.6.9-648.el.img
加载RAMDISK文件,他会加载所有系统启动时候需要的模块
第三阶段:
内核初始化
启动init进程,一切进程的“祖父”,读取/etc/inittab文件。
1.
/etc/inittab
初始化允许级别
系统初始化脚本
对应允许级别的脚本目录
关于init的级别
0
关机
1
单用户模式
2
多用户模式
3
字符界面
4
保留给开发人员
5
图形界面
6
重启
Sssingle备用的单用户模式
Emergency紧急模式(绕过rc.sysinit.sulogin)
2.
/etc/rc.d/rc.sysinit
(1)
/etc/fstab检查并挂载其他的文件系统
(2)
启用交换分区
(3)
启用磁盘配额
(4)
检查并重新挂载根文件系统
(5)
等等,还有很多。
3.
/etc/rc.d/rc.X.d
X代表运行级别
运行在/etc/rc.d/rc.X.d中定义的不同运行级别的服务初始化脚本
启动服务==链接在/etc/init.d/
K:
killS:
Start
4./etc/rc.d/rc.local/
开机脚本
关于linux的troubleshooting试验
一.
破解linux系统管理员的密码
首先重启计算机,进入grub选择界面
我们已经进入了grub的选择界面了,在这个界面里,下面会有提示教你怎么做,在这里按“e”去编辑这个boot命令行。
现在我们进入了grub的编辑模式,我们选择第二个kernel/vmlinuz-2.6.18-164roroot=LABEL=/rhgbquiet这行,按照下面的提示,在按“e”去编辑选中的哪行。
现在我们给内核传了一个“1”的参数,表示下次启动进入单用户模式
在安回车键,回到这个主界面。
已经看到我刚才做的操作,在内核后面已经多了一个“1”的参数。
在按照下面的提示按“b”键,计算机将重启进入单用户模式
这个时候将进入单用户模式
我们已经入了当用户模式,可以在这里来破解密码。
然后reboot重启就ok了,我们根本就不需要知道以前的密码是多少,等到登陆界面,输入刚刚改变的密码就OK了。
二.
加密grub
破linux系统的密码很简单,因此要加密grup,让用户不能够轻易的破解密码。
因为GRUB支持md5的密码保护。
可以生成md5的加密
用Grub-md5-crypt来生成一个md5加密
[root@localhost~]#
[root@localhost~]#grub-md5-crypt
Password:
Retypepassword:
$1$H/acS/$1IO4fc3Kw75LMLZIH5Md8.
[root@localhost~]#
然后将一个md5的值导入/boot/grub/grub.conf这个文件中
password--md5$1$H/acS/$1IO4fc3Kw75LMLZIH5Md8.
我们已经在hiddenmenu下面加上了一行password–md5xxxxxxxxxxxxxxxxxxx(md5值)
现在我们重启计算机,
再来尝试破解linux管理员的密码,
可以看到,现在我们进入了grub的选择界面,但是我们并不可以想刚才那样直接进去编辑grub,而是提示我们这里需输入密码,才可以编辑grub。
这个密码就是我们刚才设置的,而且是经过MD5的加密,现在输入“p”,然后输入密码。
只有当我们输入密码以后才可以进入grub的编辑界面。
现在我们就可以和刚刚一样的去编辑grub了。
通过对grub的加密,那么用户就不能够那么轻易的破解linux密码了。
三.修复grub配置文件
我们知道/boot/grub/grub.conf这个文件是Grub的配置文件,这个文件是linux系统启动的核心文件,如果这个文件不小心被用户给损坏了,那么如何去修复grub的配置文件呢。
首先我把系统中的/boot/grub/grub.conf这个文件删除
[root@localhost~]#cd/boot/grub/
[root@localhostgrub]#
[root@localhostgrub]#rm-rfgrub.conf
[root@localhostgrub]#ls
device.mapiso9660_stage1_5reiserfs_stage1_5ufs2_stage1_5
e2fs_stage1_5
jfs_stage1_5splash.xpm.gz
vstafs_stage1_5
fat_stage1_5
menu.lststage1xfs_stage1_5
ffs_stage1_5minix_stage1_5stage2
[root@localhostgrub]#
可以看到,由于系统中的grub.conf这个文件丢失了,所以重启计算机后,系统就会进入一个grub的编辑界面,在这个界面里面,我们只能够将grub.conf这个文件手动的全部敲出来,从而使系统可以正常工作。
我们已经手动敲出grub.conf文件,系统正常启动。
但是,进入系统后。
一定要把grub.conf文件在手动写出来。
不然每次重启时,你都将手动敲出grub.conf。
四.修复/boot分区下面所有文件
我们知道/boot分区下面有内核文件,RAMDISK文件,还有grub目录,这些文件都是系统启动时候的重要文件,如果这些文件全部都丢失,我们将如何去修复系统呢,如果是这样,我们只能够进入修复模式来修复系统。
首先我们将/boot分区下面的所有文件给删除,
[root@localhost~]#rm-rf/boot/*
[root@localhost~]#cd/boot/
[root@localhostboot]#ls
[root@localhostboot]#
已经删除了/boot下面的所有文件,只能够进入救援模式来修复系统了。
我们可以通过光盘来进入修复系统,当然也可以通过网络来引导进入修复模式,这里我从网络引导进入(由网络引导必须事先配置好服务器)。
现在我将系统设置成网络引导,
然后输入linuxrescue进入救援模式,
然后依次选择,语言,键盘布局,
它提示我们系统的所有分区都已经被挂载到/mnt/sysimage里,
如果/etc/fstab文件丢失了,所有分区都不会被读取到。
现在我们就已经进入了救援模式,
首先我们使用df-h命令来查看一下分区的状况,
可以看到,这里面所有的东西都是有光盘提供的,并不是真实的系统,而真是的分区全部被挂载到/mnt/sysimage。
而且我们的网络资源在修复模式下面也是可以被读取到的。
现在我们进入/mnt/sysimage
可以使用chroot/mnt/sysimage来进入真实的系统,
(可以把由光盘引导进入的系统叫做假系统,通过chroot/mnt/sysimage这个命令得到的是真实的环境)
进入到的真系统了,/boot分区里面什么东西都没有了,被我们刚才全部给删除了。
现在我们就开始修复系统,
由于/boot分区中的文件被全部删除了,
首先要恢复内核文件,然后再去恢复grub文件,
因为在chroot环境中,读不到光盘中的文件。
只能够退出chroot环境。
回到的假系统中。
利用网络资源来修复系统,
现在我们将内核的软件包复制到/tmp目录下去,然后重新安装内核。
可以看到,重新安装完内核,/boot分区下面的内核文件和RAMDISK文件全部就都恢复回来了。
现在还要来恢复grub目录,我们需要重写grub。
OK,grub目录就恢复成功了,
现在我们需要做的事情就是恢复grub.conf文件,
现在/boot下面所有的文件都已经修复回来了,
现在在reboot重启系统,系统应该可以正常工作了。
五.修复init脚本
刚才我们只是将/boot分区下面的所有东西给删除了,现在我们将/etc/inittab和/etc/rc.d/rc.sysinit和/etc/rc.d/rc.loacl给删除,然后将/etc/fstab文件给重名,这些文件都是系统在启动的时候需要读取到的脚本文件,如果将这些文件给删除,那么我们将如何修复系统呢,同样的,我们也只能够通过救援模式来修复系统。
[root@station20~]#
[root@station20~]#rm-rf/etc/inittab
[root@station20~]#rm-rf/etc/rc.d/rc.sysinit
[root@station20~]#rm-rf/etc/rc.d/rc.local
[root@station20~]#mv/etc/fstab/etc/fstab.bak
[root@station20~]#
看到这个提示与上面不同,上面还可以读取到分区,而且还挂载在/mnt/sysimage下面。
由于/etc/fstab文件丢失,将读取不到任何分区。
所有要做的第一件事情,就是要恢复/etc/fstab文件,这个是最基本的。
由于/etc/fstab文件的丢失,我们不知道根分区在哪里,我们使用fdisk-l命令来查看一下分区情况,并用e2lable命令来找到根分区。
现在我们已经知道/dev/sda3就是根分区了,创建一个目录,并挂载根分区。
现在根分区已经挂载到/tmp/redhat目录下面了。
进入这个目录,将/etc/fstab文件给该回来。
这个时候已经把/etc/fstab文件给改回来了,在重启看一下。
当然系统肯定还是起不来的
再次进入救援模式,
这个时候,看到的界面已经和上面不一样了。
系统的所有分区都已经被挂载到/mnt/sysimage下面去了,因为我们的/etc/fstab这个文件刚才被修复了。
下面在来恢复/etc/inittab文件,
首先要查询一下/etc/inittab这个文件是属于哪个包,然后在去安装这个包。
从而恢复/etc/inittab这个文件。
我们现在到/etc/目录下面去看看,那几个文件是否被恢复回来了。
OK。
这几个文件就全部都恢复回来了。
现在系统就应该可以正常工作了。
六.关于紧急模式
现在我们改变/etc/fstab这个文件里面的/home分区的卷标。
然后重启计算机,
系统将自动进入紧急模式,
在紧急模式下面,需要输入密码。
在紧急模式下面,系统将绕过/etc/rc.d/rc.sysinit这个脚本,在这个模式里,根文件系
统将是只读的。
可以看到,这个文件的确是只读,如果这样,我们就不能够将/home分区的卷标给改回来了。
我们可以使用mount-oremount,rw/
这条命令。
以可读可写的方式挂载了根文件系统后,根文件系统将可以被修改了。
OK,将/etc/fstab文件中的/home卷标改回来了。
系统就可以正常启动了。
关于linux系统的启动和troubleshooting试验就是这么多了。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- RHEL54 系统启动 以及 troubleshooting 试验