一、Linux系统启动
Linux系统启动过程如下:
initramfs镜像用来启动系统,解压后是一个临时的根目录。
用file查看initramfs-2.6.32-696.el6.i686.img的文件类型为gzip压缩文件,将它改为gz格式,解压缩。
解压后得到一个initramfs-2.6.32-696.el6.i686.img,查看文件类型为ASCII,继续解压。
开机由/etc/rc.d/rc.sysinit初始化,此文件主要功能设置有
1.获得网络环境
2.挂载设备
3.开机启动画面Plymouth
4.判断是否启动SELinux
5.显示于开机过程中的欢迎画面
6.初始化硬件
7.用户自定义模块的加载
8.配置内核的参数
9.设置主机名
10.同步存储器
11.设备映射器及相关的初始化
12.初始化软件磁盘阵列(RAID)
13.初始化LVM的文件系统功能
14.检验磁盘文件系统
15.设置磁盘配额(quota)
16.重新以可读写模式挂载系统磁盘
17.更新quota(非必要)
18.启动系统虚拟随机数生成器
19.配置机器(非必要)
20.清除开机过程当中的临时文件
21.创建ICE目录
22.启动交换分区(swap)
23.将开机信息写入/var/log/dmesg文件中
运行级别参数传入/etc/rc.d/rc这个脚本之后,由这个脚本文件按照不同的运行级别启动/etc/rc[0-6].d目录中的相应的程序
/etc/rc3.d/k??开头的文件,会按照数字顺序依次关闭
/etc/rc3.d/S??开头的文件,会按照数字顺序依次启动
二、grub工具及配置文件
grub允许用户可以在计算机内同时拥有多个操作系统,并在计算机启动时选择希望运行的操作系统。grub中分区含义如表所示
grub配置文件/etc/grub/grub.conf
参数含义
default=0 //默认启动第一个系统
timeout=5 //等待时间,默认是5秒
splashimage=(hd0,0)/grub/splash.xpm.gz //指定grub启动时的背景图像文件的保存位置
hiddenmenu //隐藏菜单
title CentOS 6 (2.6.32-696.el6.i686) //标题
root (hd0,0) //指启动程序的保存分区
kernel /vmlinuz-2.6.32-696.el6.i686 ro root=/dev/mapper/VolGroup-lv_root rd_NO_LUKS rd_NO_MD rd_LVM_LV=VolGroup/lv_swap crashkernel=auto LANG=zh_CN.UTF-8 rd_LVM_LV=VolGroup/lv_root KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM rhgb quiet //定义加载时的选项
initrd /initramfs-2.6.32-696.el6.i686.img //指定initramfs内存文件系统镜像文件的所在位置
三、grub进入单用户模式
单用户模式主要功能
1.忘记root密码
2.修改系统默认运行级别
按e进入命令编辑模式
光标移到kernel行,按e进入grub界面
在quiet后加1,进入单用户模式
按b启动,进入单用户模式(可修改root密码)
eg:假设启动文件/etc/inittab文件被修改,如何修复?
我将inittab文件修改,将默认启动级别改为6,这样系统启动时会一直重启
在单用户模式下修改/etc/inittab文件。
重启后成功。
ps:后来我用的debian虚拟机忘记了密码,尝试后发现它进入单用户的模式有点不一样,记录一下
按e进入编辑模式
在这一行quiet之后添加“init=/bin/bash”,可进入单用户模式
进入后发现修改密码出错,将根目录重新挂载后成功修改密码
四、grub加密
为防止外人进入单用户模式修改root密码,可将grub进行加密
加密过程如下
grub-md5-crypt //生成一个md5加密的密码,将其复制
vi /boot/grub/grub.conf //将密码粘贴置文件中,保存后,重启生效
此时,需要按下grub的密码才可以进入编辑模式
如果密码输错,将不能进行编辑
正确输入密码,可以看到跟加密前一样的编辑页面。
五、grub启动页面分辨率调整
首先查询内核是否支持分辨率修改
分辨率参数如下
如果想将分辨率设为1024*768,则写入/boot/grub/grub.conf内,vga=791。
重启后生效
六、光盘救援模式修复启动故障
1.如何进入光盘救援模式
插入光盘,启动时快速按F2键(或者右键点击虚拟机-电源-启动时进入bios)。
进入bios后,将光盘启动移到第一项(+)。
进入光盘修复模式,将光标移动到第三行
一路默认,网络可不设置
2.光盘救援模式下可做什么
a、忘记grub加密的密码,可在救援模式下清除grub密码
b、重要系统文件丢失,可在救援模式下找回
a、清除grub密码步骤
chroot /mnt/sysimage //改变主目录
locate grub.conf //查出grub配置文件的位置,这里看到在disk1下
vi /disk1/grub/grub.conf //删除密码行,重启系统
b、重要文件找回步骤
eg:将/etc/inittab文件删除,如何恢复?
<1>.进入光盘救援模式,后,将刚刚拷贝在/tmp下的inittab文件复制粘贴到/etc下
<2>.先查询出inittab文件的安装包版本,进入光盘救援模式后,将光盘挂载,从光盘的Packeges目录里安装inittab。
网友评论