1、启动流程-运行级别
1.1 运行级别
0 关机
1 单用户模式,可以想象为windows的安全模式,主要用于系统修复
2 不完全的命令行模式,不含NFS服务(Linux间文件共享的服务)
3 完全的命令行模式,就是标准字符界面
4 系统保留
5 图形模式
6 重启动
1.2 运行级别命令
$ runlevel 查看运行级别命令
$ init 运行级别 改变运行级别命令
1.3 系统默认运行级别
$ vim /etc/inittab
id:3:initdefault: 系统开机后直接进入那个运行级别
2、启动过程-启动过程
2.1 initramfs内存文件系统
CentOS 6.x中使用initranfs内存文件系统取代了CentOS 5.x中的initrd RAM Disk。他们的作用类似,可以通过启动引导程序加载到内存中,然后加载启动过程中所需要的内核模块,比如USB、SATA、SCSI硬盘的驱动和LVM、RAID文件系统的驱动。
mkdir /tmp/initramfs 建立测试目录
cp /boot/initramfs-2.6.32-279.e16.i686.img /tmp/initramfs/ 复制initramfs文件
cd /tmp/initramfs/
file initramfs-2.6.32-279.e16.i686.img
mv initramfs-2.6.32-279.e16.i686.img initramfs-2.6.32-279.e16.i686.img.gz 修改文件后缀名为gz
gunzip initramfs-2.6.32-279.e16.i686.img.gz 解压缩
file initramfs-2.6.32-279.e16.i686.img
cpio -ivcdu < initramfs-2.6.32-279.e16.i686.img 解压缩
2.2 调用 /etc/init/rcS.conf配置文件
主要功能是两个:
先调用 /etc/rc.d/rc.sysinit,然后由/etc/rc.d/rc.sysinit配置文件进行Linux系统初始化
然后调用 /etc/inittab,然后由 /etc/inittab配置文件确定系统的默认运行级别
2.3 由/etc/rc.d/rc.sysinit初始化
获得网络环境
挂载设备
开机启动画面Plymouth(取替了过往的RHGB)
判断是否启用SELinux
显示于开机过程中的欢迎画面
初始化硬件
用户自定义模块的加载
配置内核的参数
设置主机名
同步存储器
设备映射器及相关的初始化
初始化软件磁盘阵列(RAID)
初始化LVM的文件系统功能
检验磁盘文件系统(fsck)
设置磁盘配额(quota)
重新以可读写模式挂载系统磁盘
更新quota(非必要)
启动系统虚拟随机数生成器
配置机器(非必要)
清除开机过程当中的临时文件
创建ICE目录
启动交换分区(swap)
将开机信息写入 /var/log/dmesg文件中
调用 /etc/rc.d/rc文件
运行级别参数传入 /etc/rc.d/rc这个脚本之后,由这个脚本文件按照不同的运行级别启动 /etc/rc[0-6].d/目录中的相应程序
/etc/rc3.d/K??开头的文件(??是数字),会按照数字顺序以此关闭
/etc/rc3.d/S??开头的文件(??是数字),会按照数字顺序以此启动
3、启动引导程序-Grub配置文件
3.1 grub中分区表示
第一块SCSI硬盘 | 第一个主分区 | /dev/sda1 | hd(0,0) |
第二个主分区 | /dev/sda2 | hd(0,1) | |
扩展分区 | /dev/sda3 | hd(0,2) | |
第一个逻辑分区 | /dev/sda5 | hd(0,4) | |
第二块SCSI硬盘 | 第一个主分区 | /dev/sdb1 | hd(1,0) |
第二个主分区 | /dev/sdb2 | hd(1,1) | |
扩展分区 | /dev/sdb3 | hd(1,2) | |
第一个逻辑分区 | /dev/sdb5 | hd(1,4) |
3.2 grub配置文件
$ vi /boot/grub/grub.conf
default=0 默认启动第一个系统
timeout=5 等待时间,默认是5秒
splashimage=(hd0,0)/grub/splash/xpm.gz 这里是指定grub启动时的背景图像文件的保存位置的
hiddenmenu 隐藏菜单
title CentOS(2.6.32-279.e16.i686) title就是标题的意思
root (hd0,0) 是指启动程序的保存分区
kernel /vmlinuz-2.6.32-279-4a87-8a2b-a535edb362c9 定义内核加载时的选项
rd_NO_LUKS KEYBOARDTYPE=pc KEYTABLE=us rd_NO_MD crashkernal=auto LANG=zh_CN.UTF-8 rd_NO_LVM rd_NO_DM rhgb quiet
initrd /initramfs-2.6.32-279.e16.i686.img 指定了initramfs内存文件系统镜像文件的所在位置
4、Grub加密与字符界面分别率调整
4.1 grub加密
$ grub-md5-crypt 生成加密密码串
$ vi /boot/grub/grub.conf
default=0
timeout=5
password --md5 $1$Y84LB1$8tMY2PibScmuOCc8z8U35 将加密密码串password选项放在整体设置处
splashimage=(h0,0)/grub/splash.xpm.gz
hiddenmenu
…省略部分内容…
4.2 纯字符界面分辨率调整
$ grep “CONFIG_FRAMEBUFFER_CONSOLE” /boot/config-2.6.32-279.e16.i686 查询内核是否支持分辨率修改
色深 | 640*480 | 800*600 | 1024*768 | 1280*1024 |
8位 | 769 | 771 | 773 | 775 |
15位 | 784 | 787 | 790 | 793 |
16位 | 785 | 788 | 791 | 794 |
32位 | 786 | 789 | 792 | 795 |
$ vi /boot/grub/grub/conf
kernel /vmlinuz-2.6.32-279.e16.i686 ro root= … 省略部分内容… vga=791