話說CentOS6的啟動流程

1.按下開機按鈕,電腦的主板通電,電腦開始加電自檢(POST,Power On and Self Test),測試主機的硬件是否滿足開機的要求.

2.加載主板上的BIOS(Base Input/Output System,基本輸入輸出系統),BIOS會加載用戶設定的第一個可開機設備.,這里我們只說硬盤的加載.

可以按下鍵盤上的Esc或者是F2或者是Del鍵,可以調整開機設備,這個鍵依據每個主板的不同而不同.

3.BIOS加載硬盤的第一個分區的第一個扇區內的內容,也叫做MBR(Master Boot Record,主引導記錄).

MBR只有512byte大小,由三部分組成:主引導記錄,硬盤分區表和硬盤有效標志,其中主引導記錄占用446byte,硬盤分區表占用64byte,硬盤有效標志占用2byte,通常為55AA.

4.由MBR來加載CentOS系統的開機系統管理程序GRUB(GRand Unitifed Bootloader),也就是/boot/grub/grub.conf文件.grub.conf**這個文件的內容如下:

#指定默認加載第一個系統,如果沒有這一項,用戶不選擇的話,系統默認會一直停在這里
default=0 
#開機菜單顯示的時間,不建議設置太長時間              
timeout=5
#開機菜單顯示時的背景圖,分辨率為640*480               
splashimage=(hd0,0)/grub/splash.xpm.gz 
#這一項為默認隱藏菜單,可以省略       
hiddenmenu 
#顯示的開機菜單               
title CentOS 6 (2.6.32-642.el6.x86_64)
    #指定系統所在的硬盤的第一個分區         
    root (hd0,0)        
    kernel /vmlinuz-2.6.32-642.el6.x86_64 ro root=UUID=234a19e9-96c4-4710-af9b-536fdefbe875 rd_NO_LUKS rd_NO_LVM LANG=en_US.UTF-8 KEYBOARDTYPE=pc KEYTABLE=us  rhgb quiet
        #指明內核kernel的地址,這里的根文件系統為/boot這個分區,后面接的是開機時內核加載的參數
        #ro指定開機過程中,以ro(ready only)方式加載根文件系統
        #root=UUID=234a19e9-96c4-4710-af9b-536fdefbe875為系統的真正的根,這里是用硬盤分區的UUID號指定的 
        #rd_NO_LUKS 的意思是說系統上禁用會被initrd或init腳本自動掛載的加密設備
        #LANG=en_US.UTF-8指定系統所用的語言 
        #rd_NO_LVM為系統不啟用LVM邏輯卷
        #rd_NO_MD 選項為系統禁用軟RAID設備
        #SYSFONT=latarcyrheb-sun16選項為系統開機時所用的字體
        #KEYBOARDTYPE=pc選項為指定鍵盤的類型
        #KEYTABLE=us選項為指定美式鍵盤
        #rd_NO_DM選項為不啟用硬RAID
        #rhgb選項為不顯示開機的畫面
        #quiet選項指定系統開機過程中加載的各種信息不顯示出來
    #指明initramfs.img文件的地址,這里默認的根系統為/boot分區
    initrd /initramfs-2.6.32-642.el6.x86_64.img

5.依據GRUB中的信息,加載CentOS6系統的內核到內存中,并把內核解壓縮.

6.內核初始化完成后,會加載initramfs.img這個虛擬的文件系統,并根據initramfs.img提供的各種驅動探測加載主機上所有的硬件設備,然后以只讀的方式掛載根文件系統.

7.執行/sbin/init程序,讀取系統的/etc/inittab文件,取得系統的運行級別,同時運行/etc/rc.d/rc.sysinit程序,初始化系統的各種信息,比如:

讀取主機名hostname,
依據/etc/issue文件讀取系統的歡迎信息
激活udev和selinux
檢測根文件系統,并根據/etc/fstab文件來以讀寫方式重新掛載根文件系統
設置系統時鐘
激活swap分區
根據/etc/sysctl.conf文件設置內核參數
激活lvm及software raid設備
加載額外設備的驅動程序

8.根據系統的運行級別,運行/etc/rc.d/rc#.d/下的各種文件,這里所有的文件都是/etc/rc.d/init.d/目錄下文件的軟鏈接

這個文件夾下面的程序都是以K和S開頭的,基中
以K開頭的文件是在系統開機過程中要被運行的服務,K后面跟的數字表示的是服務的運行次序;數字越小,越先運行;數字越小的服務,通常都會依賴到別的服務,
以S開關的服務則表示的是系統在關機或是切換運行級別時要結束的服務,S后面跟的數字表示的是服務結束的次序;數字越小,越先被結束;數字越小的服務,通常為被依賴到的服務

9.正常級別下,前面的程序運行完畢后, 最后一個S99local的程序指向/etc/rc.d/rc.local這個腳本,用戶可以在這個腳本里可以寫入自己不方便或是不需寫入的系統服務腳本.

10.執行/bin/login程序,進入登錄狀態,等待用戶登錄

原創文章,作者:renpingsheng,如若轉載,請注明出處:http://www.www58058.com/75587

(0)
renpingshengrenpingsheng
上一篇 2017-05-14 20:53
下一篇 2017-05-14 22:27

相關推薦

  • Liunx權限的管理

    一、權限 獲取某種資源的能力。對于Liunx而言,一切皆文件。所以,對于Liunx的權限定義,也就是定義文件被不同用戶訪問能力的過程。 權限分為三種:r、w、x 文件 r:查看文件內容 w:修改文件內容 x:可以將文件啟動運行 目錄 r:可以使用ls命令查看目錄中的文件名 w:可以在目錄中創建或刪除文件(能否刪除文件,取決于用戶對目錄的寫權限 x:可以cd到…

    Linux干貨 2015-04-03
  • linux用戶和用戶組

    一、用戶和組 1、用戶賬號類型 在Linux系統中,根據系統管理的需要將用戶賬號分為不同的類型,其擁有的權限、擔任的角色也各不相同。主要包括超級用戶、普通用戶和程序用戶。 【超級用戶】:root用戶是Linux系統中默認的超級用戶賬號,對本主機擁有最高的權限,類似于Windows系統中的Administrator用戶。只有當進行系統管理、維護任務時,才建議使…

    Linux干貨 2017-07-22
  • linux用戶和組管理

    linux用戶和組管理 類Unix系統的設計初衷就是為讓多用戶同時工作,所以也迫使Linux系統有了極強的安全性,在前面安裝紅帽RHEL7操作系統時還特別要求“設置root用戶密碼”,而root用戶是存在于所有類UNIX系統中的”超級用戶”。 用戶管理 root賬戶介紹(超級管理員) root用戶擁有極高的系統所有權,能夠管理系統的各項功能,如添加/刪除用戶…

    Linux干貨 2016-09-05
  • 管理用戶組的命令

    用戶賬戶 管理用戶的命令及配置文件, Useradd,usermod,userdel,newusers,chpasswd,passwd,chage,chfn,chsh,id,su,finger Useradd:創建用戶,         Useradd 選項 參數  &…

    Linux干貨 2016-10-23
  • 文本處理工具-習題

    1 、找出ifconfig 命令結果中本機的所有IPv4地址 [root@centos7 ~]# ifconfig |head -2 |tail-1 |cut -dn -f2 |cut -d" " -f2 2 、查出分區空間使用率的最大百分比值 [root@centos7 ~]# df |cut -c44-46 |sort -n|tail…

    Linux干貨 2016-08-15
  • N26-博客作業-week16

    1、源碼編譯安裝LNMP架構環境 IP:192.168.12.137 Nginx:1.8.1 MariaDB:5.5.57 PHP:5.6.31 安裝開發環境包組 yum groupinstall “Development Tools” “Server Platform Development” -y 安裝開發程序包 yum install pcre-dev…

    2017-08-04
欧美性久久久久