CentOs開(kāi)啟啟動(dòng)的流程主要有以下幾個(gè)步驟:
一.POST加電自檢
POST(POST ON SELF TEST)首先對(duì)每一個(gè)設(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個(gè)字節(jié)是BootLoader,后面的4*16個(gè)字節(jié)是存放分區(qū)信息的,最后兩個(gè)字節(jié)是校驗(yàn)信息的 。
三、GRUB加載內(nèi)核
GRUB(GRand Unified Bootloader)就是MBR前446個(gè)字節(jié),是Booloader的一種,它的作用是選擇要啟動(dòng)的內(nèi)核。
四、啟動(dòng)init進(jìn)程
init進(jìn)程是系統(tǒng)啟動(dòng)的第一個(gè)進(jìn)程,其他的進(jìn)程都是此進(jìn)程控制fork出來(lái)的,PID=1.
1讀取/etc/inittab,選擇默認(rèn)級(jí)別
在我的機(jī)器上,文件內(nèi)容如下:
id:5:initdefault:
表示多用戶模式,支持圖形模式
2執(zhí)行初始化系統(tǒng)腳本
這個(gè)腳本在/etc/rc.d/rc.sysinit中
3執(zhí)行/etc/rc.d/rcX.d/下的腳本
因?yàn)檫@里我選擇的默認(rèn)級(jí)別是5,則會(huì)讀取rc5.d下的所有腳本,來(lái)控制系統(tǒng)啟動(dòng)的時(shí)候啟動(dòng)或關(guān)閉那些服務(wù)。
這里的腳本大致分為兩類,以S開(kāi)頭的和以K開(kāi)頭的。
S:代表開(kāi)機(jī)啟動(dòng)的
K:表示開(kāi)機(jī)時(shí)不啟動(dòng)的
文件命令格式,例如:
S01sysstat S 開(kāi)機(jī)啟動(dòng) 01 啟動(dòng)次序 sysstat 啟動(dòng)腳本名
可以通過(guò)chkconfig 來(lái)關(guān)系腳本的開(kāi)機(jī)自啟動(dòng)
chkconfig –add SRC_SCRIPT
添加服務(wù)
chkconfig –del SRC_SCRIPT
刪除服務(wù)
chkconfig SRC_SCRIPT {on|off}
設(shè)置服務(wù)開(kāi)機(jī)是否自啟動(dòng)
–level 2345 指定默認(rèn)級(jí)別
4執(zhí)行/etc/rc.d/rc.local腳本
這是啟動(dòng)過(guò)程中最后啟動(dòng)的一個(gè)腳本,然后會(huì)執(zhí)行/bin/login 登陸用戶。
CentOS設(shè)置開(kāi)機(jī)等待時(shí)間
Centos6.x操作系統(tǒng)每次開(kāi)機(jī)時(shí),都會(huì)有系統(tǒng)等待時(shí)間,此選項(xiàng)最常用到的地方就是修改密碼,如果不需要修改密碼的話,通常需要快速進(jìn)入系統(tǒng)。因?yàn)榭梢孕薷南到y(tǒng)等待時(shí)間。
開(kāi)機(jī)等待時(shí)間默認(rèn)為5秒,將之設(shè)置為0秒后,保存后重新啟動(dòng)服務(wù)器,就會(huì)迅速跳過(guò)開(kāi)機(jī)選項(xiàng)進(jìn)入系統(tǒng),不過(guò)建議設(shè)置為1秒,這樣忘記密碼時(shí),可以及時(shí)按下重新設(shè)置密碼的選項(xiàng)。
[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è)置開(kāi)機(jī)選項(xiàng)描述,默認(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