CentOs開啟啟動的流程主要有以下幾個步驟:
一.POST加電自檢
POST(POST ON SELF TEST)首先對每一個設(shè)備進(jìn)行檢查,完成后悔尋找存有引導(dǎo)記錄的設(shè)備,找到讀入操作系統(tǒng)的引導(dǎo)記錄,將系統(tǒng)控制權(quán)交給引導(dǎo)記錄。
二、MBR引導(dǎo)
MBR(Master Boot Record),MBR記錄一般是在磁盤0磁道1扇區(qū),共512字節(jié),前446個字節(jié)是BootLoader,后面的4*16個字節(jié)是存放分區(qū)信息的,最后兩個字節(jié)是校驗信息的 。
三、GRUB加載內(nèi)核
GRUB(GRand Unified Bootloader)就是MBR前446個字節(jié),是Booloader的一種,它的作用是選擇要啟動的內(nèi)核。
四、啟動init進(jìn)程
init進(jìn)程是系統(tǒng)啟動的第一個進(jìn)程,其他的進(jìn)程都是此進(jìn)程控制fork出來的,PID=1.
1讀取/etc/inittab,選擇默認(rèn)級別
在我的機(jī)器上,文件內(nèi)容如下:
id:5:initdefault:
表示多用戶模式,支持圖形模式
2執(zhí)行初始化系統(tǒng)腳本
這個腳本在/etc/rc.d/rc.sysinit中
3執(zhí)行/etc/rc.d/rcX.d/下的腳本
因為這里我選擇的默認(rèn)級別是5,則會讀取rc5.d下的所有腳本,來控制系統(tǒng)啟動的時候啟動或關(guān)閉那些服務(wù)。
這里的腳本大致分為兩類,以S開頭的和以K開頭的。
S:代表開機(jī)啟動的
K:表示開機(jī)時不啟動的
文件命令格式,例如:
S01sysstat S 開機(jī)啟動 01 啟動次序 sysstat 啟動腳本名
可以通過chkconfig 來關(guān)系腳本的開機(jī)自啟動
chkconfig –add SRC_SCRIPT
添加服務(wù)
chkconfig –del SRC_SCRIPT
刪除服務(wù)
chkconfig SRC_SCRIPT {on|off}
設(shè)置服務(wù)開機(jī)是否自啟動
–level 2345 指定默認(rèn)級別
4執(zhí)行/etc/rc.d/rc.local腳本
這是啟動過程中最后啟動的一個腳本,然后會執(zhí)行/bin/login 登陸用戶。
CentOS設(shè)置開機(jī)等待時間
Centos6.x操作系統(tǒng)每次開機(jī)時,都會有系統(tǒng)等待時間,此選項最常用到的地方就是修改密碼,如果不需要修改密碼的話,通常需要快速進(jìn)入系統(tǒng)。因為可以修改系統(tǒng)等待時間。
開機(jī)等待時間默認(rèn)為5秒,將之設(shè)置為0秒后,保存后重新啟動服務(wù)器,就會迅速跳過開機(jī)選項進(jìn)入系統(tǒng),不過建議設(shè)置為1秒,這樣忘記密碼時,可以及時按下重新設(shè)置密碼的選項。
[root@rac1 grub]# cat /boot/grub/menu.lst
# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE: You have a /boot partition. This means that
# all kernel and initrd paths are relative to /boot/, eg.
# root (hd0,0)
# kernel /vmlinuz-version ro root=/dev/mapper/vg_rac1-lv_root
# initrd /initrd-[generic-]version.img
#boot=/dev/sda
default=0
timeout=5 //設(shè)置開機(jī)選項描述,默認(rèn)為5秒
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
title Red Hat Enterprise Linux (2.6.32-358.el6.x86_64)
root (hd0,0)
kernel /vmlinuz-2.6.32-358.el6.x86_64 ro root=/dev/mapper/vg_rac1-lv_root rd_LVM_LV=vg_rac1/lv_root rd_NO_LUKS LANG=en_US.UTF-8 rd_NO_MD SYSFONT=latarcyrheb-sun16 crashkernel=128M rd_LVM_LV=vg_rac1/lv_swap KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM rhgb quiet
initrd /initramfs-2.6.32-358.el6.x86_64.img