久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

Linux系統(tǒng)啟動(dòng)流程

 隱者黑鷹88 2015-07-11


POST(加電自檢)-->bootsequence(引導(dǎo)次序,,BIOS-->Boot LoaderMBR-->Kernel+ramdisk(臨時(shí)根,,initrd,,initramfs-->mount rootfs(根切換)-->/sbin/init(配置文件,CentOS 5:/etc/inittab, CentOS6 /etc/init/*.conf


設(shè)置默認(rèn)運(yùn)行級(jí)別-->指定系統(tǒng)初始化腳本-->初始化額外的硬件設(shè)備并加載驅(qū)動(dòng)程序-->啟動(dòng)(關(guān)閉)服務(wù)(/etc/rc.d/rc#.d,,/etc/rc.d/init.d/-->/etc/rc.d/rc.local-->設(shè)置CtrlAltDel組合的功能-->啟動(dòng)終端(mingetty),,并在終端附加登錄程序(login-->如果級(jí)別為5,則要啟動(dòng)X server,;


一,、POST加電自檢:

  當(dāng)我們打開(kāi)計(jì)算機(jī)電源,計(jì)算機(jī)首先會(huì)讀取BIOS信息,,BIOS中記錄了CPU,、內(nèi)存、設(shè)備啟動(dòng)序列,、硬盤等信息,;然后對(duì)系統(tǒng)啟動(dòng)關(guān)鍵硬件設(shè)備進(jìn)行檢測(cè),如果出現(xiàn)嚴(yán)重故障則停機(jī),;如果是一般故障,,會(huì)發(fā)出報(bào)警提示,等待故障清楚,;如果沒(méi)有故障,,加電自檢完成。

  BIOSBasic Input Output System是保存于主板CMOS芯片中的程序代碼,;

  CMOSComplementaryMetal Oxide Semiconductor):是主板上的ROM芯片,;


二、獲取引導(dǎo)次序,,讀取MBR

  加電自檢完成之后:CPU會(huì)讀取BIOS信息中的設(shè)備啟動(dòng)序列,,按照次序引導(dǎo),按次序找引導(dǎo)設(shè)備,,第一個(gè)有引導(dǎo)程序(MBR)的設(shè)備即為啟動(dòng)PC server所用到的設(shè)備,;

 

  可作為啟動(dòng)設(shè)備:光驅(qū),便攜式移動(dòng)設(shè)備,,硬盤,,網(wǎng)卡(系統(tǒng)引導(dǎo),,PXE

    PXE實(shí)現(xiàn)系統(tǒng)引導(dǎo)DHCPtftp(kernel+ramdisk)


  MBR(主引導(dǎo)記錄,,Master BootRecord):

  MBR位于磁盤的0磁道0扇區(qū),,占用512個(gè)字節(jié):

1
2
3
446bytes:Boot Loader,主程序,;
64bytes:PartitionTable,,硬盤分區(qū)表,每16bytes標(biāo)記一個(gè)分區(qū),,一共4分區(qū),;3個(gè)主分區(qū),,1個(gè)擴(kuò)展分區(qū),,擴(kuò)展分區(qū)還可以劃分為若干個(gè)邏輯分區(qū);
2bytes:MBR有效性標(biāo)記,;



三,、Boot Loader

  操作系統(tǒng)內(nèi)核運(yùn)行之前的一段小程序,選擇要啟動(dòng)的內(nèi)核(在當(dāng)前磁盤的某或某些分區(qū)上),;


1,、Boot Loader比較常見(jiàn)的有GRUBLILO

1
2
3
4
5
LILO:LInux Loader
  0-1023范圍內(nèi)的柱面構(gòu)成的分區(qū)的內(nèi)核文件,通常應(yīng)用與嵌入式計(jì)算機(jī),;
GRUB:GRand Unified Bootloader
  CentOS 5&6:Grub 0.97
  CentOS7:Grub2 1.96


2,、GRUBGRand Unified Bootloader

  1)、grub程序由兩段組成:

    

1
2
3
stage1:位于MBR中(0柱面 0磁道 1扇區(qū)),;
stage1_5:位于MBR隨后的扇區(qū),;
stagr2:讀取grub.conf配置文件,并實(shí)現(xiàn)引導(dǎo)功能的擴(kuò)展,;


   grub目錄和配置文件位置:

wkiom1wfh4cy6yqqaajpruj1nry055.jpg


  2),、grub的功能:

1
2
3
4
5
6
7
8
9
10
1、提供菜單,,并提供交互式接口,;
  e:進(jìn)入編輯模式;
  a:直接修改內(nèi)核參數(shù),;
  c:進(jìn)入grub命令行模式,;
2、允許用戶選擇要啟動(dòng)的內(nèi)核或系統(tǒng),;
  允許傳遞引導(dǎo)參數(shù)給內(nèi)核,;
  選擇界面可隱藏;
3,、為編輯功能提供保護(hù)機(jī)制,;
  啟用內(nèi)核文件:選擇運(yùn)行制定的內(nèi)核需要先輸入密碼;
  傳遞參數(shù):使用e命令需要先輸入密碼;


 

    在菜單選擇倒計(jì)時(shí)界面按任意鍵進(jìn)入grub菜單:

wkiol1wfidhirlnnaafh7y1zigo730.jpg


    按e鍵進(jìn)入編輯菜單可以看到kernelinitrd

wkiom1wficzjkvw6aag4zl07fkm001.jpg


  3),、grub命令行接口:

1
2
3
4
5
6
7
8
9
10
11
>root(DEVICE):指定哪個(gè)分區(qū)為接下來(lái)要啟動(dòng)的系統(tǒng)或內(nèi)核文件所在的分區(qū),;
  所有硬盤都識(shí)別為hd;
 不同的硬盤基于數(shù)字標(biāo)識(shí):如hd0,hd1等,;
 同一個(gè)硬盤上的不同分區(qū),,也使用數(shù)字標(biāo)識(shí),如hd0,0 hd1,5,;
  
>find(DEVICE)/path/to/file:查找文件
  
>kernel:指定要運(yùn)行的內(nèi)核文件,;
>initrd:為要運(yùn)行的內(nèi)核指定其可用的ramdisk文件;
  
>boot:?jiǎn)?dòng)此前配置好的內(nèi)核或系統(tǒng),;


 

  按c鍵進(jìn)入grub命令行接口:

wkiom1wfiotxydebaaduszlzmh0026.jpg


  4),、配置文件grub.conf

    文件位置:/boot/grub/grub.conf

wkiom1wfi3oyvdmoaahr4c64mq4017.jpg


  參數(shù):

1
2
3
4
5
6
7
8
default=:選擇第幾個(gè)title配置的內(nèi)核或系統(tǒng),各title從0開(kāi)始編號(hào),;
timeout=#:菜單顯示的超時(shí)時(shí)長(zhǎng),;
splashimage=/path/to/some_image_file:指定菜單的背景圖片;此圖片只能為14bits色,,xpm格式,,gzip壓縮;
hiddenmenu:隱藏菜單
titleTILTE STRING:顯示于菜單中的標(biāo)題,;
root:指定引導(dǎo)分區(qū),;
kernel:指定kernel位置;
initrd:指定initramfs位置,;


  在grub菜單按a鍵可在內(nèi)核加載前編輯內(nèi)核參數(shù):

wkiom1wfi4vwkpsyaaea1cfebgs632.jpg


  常用參數(shù):

1
single:?jiǎn)斡脩裟J絾?dòng),;


  5)、grub保護(hù)機(jī)制:

1
2
3
4
5
6
1,、生成密碼:
  #grub-md5-crypt
2,、保護(hù)編輯功能,則需要title之外的添加:
  #password--md5 密碼串
3,、保護(hù)使用某內(nèi)核,,則需要內(nèi)核對(duì)應(yīng)的title之下添加:
  #password--md5 密碼串


  6)、安裝grub的方式:

1
2
3
4
5
6
7
8
使用grub-install命令:
  #grub-install [--root-directory=/path/to/somewhere] DEVICE
    --root-directory=/path/to/somewhere
  /path/to/somewhere:內(nèi)核及initrd文件所在的分區(qū)的掛載點(diǎn)的父目錄,,且此掛載點(diǎn)必須叫boot,;
例如:/dev/sdb1:/mnt/boot
  #grub-install --root-directory=/mnt /dev/sdb

 

四、kernel+ramdisk

  根據(jù)grub設(shè)定的內(nèi)核映像所在路徑,,系統(tǒng)讀取內(nèi)核文件,,并進(jìn)行解壓縮操作;系統(tǒng)將解壓縮后的內(nèi)核放在內(nèi)存中,,完成內(nèi)核自身初始化,;探測(cè)所能識(shí)別的硬件設(shè)備,,并加載驅(qū)動(dòng)程序,完成核心環(huán)境建立,;

wkiom1wfkdbqkv4saag4eb3tkj8162.jpg


  要讀取內(nèi)核文件必須訪問(wèn)根文件系統(tǒng)要加載根文件系統(tǒng)所在的設(shè)備,,而此時(shí)根文件系統(tǒng)沒(méi)有掛載,要掛載根文件系統(tǒng)需要根文件系統(tǒng)所在設(shè)備的驅(qū)動(dòng)程序,。為解決這個(gè)問(wèn)題,,grub在加載內(nèi)核同時(shí),也把ramdisk加載到內(nèi)存中并運(yùn)行,;


  展開(kāi)ramdisk鏡像文件:

wkiol1wfkjsta0kwaarnfxosx-u106.jpg


  ramdisk在內(nèi)存中表現(xiàn)為一個(gè)虛擬根文件系統(tǒng)initfs,,里面有如同Linux根目錄下的binsbin,、dev,、etclib,、proc,、usr,、var,、tmp等目錄;initfs將內(nèi)核與真實(shí)根建立聯(lián)系,,內(nèi)核通過(guò)initfs加載驅(qū)動(dòng)程序,,然后進(jìn)行根切換,掛載真實(shí)根目錄,;至此內(nèi)核加載完成,;


1、kernel:

  內(nèi)核的功能:進(jìn)程管理,、文件系統(tǒng),、硬件驅(qū)動(dòng)(在內(nèi)核模式下運(yùn)行)、內(nèi)存管理,、安全功能(SELinux),、網(wǎng)絡(luò)子系統(tǒng);


  1),、內(nèi)核設(shè)計(jì)流派:

1
2
3
4
5
6
7
8
9
10
單內(nèi)核體系結(jié)構(gòu):
  linux:支持模塊化,,模塊可以動(dòng)態(tài)裝卸載
  linux內(nèi)核:核心+外圍模塊
    核心:/boot/vmlinux-VERSION-release
    模塊:/lib/modules/VERSION-release
      .ko:kernel object
    ramdisk:/boot/initramfs-VERSION-release.img
      在內(nèi)核啟動(dòng)過(guò)程中裝載根文件系統(tǒng)時(shí)有用;模塊間有可能存在依賴關(guān)系,;
微內(nèi)核體系結(jié)構(gòu):
  windows,、solaris


  2)、內(nèi)核的某些功能:

1
2
3
編譯進(jìn)內(nèi)核本體 [*]
編譯成內(nèi)核模塊 [M]
不選擇使用     [ ]

 

  3),、內(nèi)核模塊管理:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
#lsmod:顯示內(nèi)核已裝載模塊
  
動(dòng)態(tài)裝卸載模塊:
  #modprobe -rMOD_NAME:卸載,;
  #modprobe MOD_NAME:裝載,;
  #insmod/path/to/module_file:裝載;
  #rmmod MOD_NAME:卸載,;
查看某模塊的詳細(xì)信息:
  #modinfo MOD_NAME
                                     
檢查并生成模塊間依賴關(guān)系的命令:
  #depmod


2,、ramdisk

1
2
3
4
5
6
CentOS 5:SysV,init,;/etc/inittab--/etc/rc.d/rc.sysinit,;
CentOS 6:upstart,init,;/etc/init/*.conf(/etc/inittab) --> /etc/rc.d/rc.sysinit
  #chkconfig
CentOS 7:systemd,, init;/usr/lib/systemd/system/,;借鑒MAC OS X,;
  #systemctl

 

五、/sbin/init

  內(nèi)核加載完成之后,,第一個(gè)運(yùn)行的程序就是/sbin/init,,該文件會(huì)先讀取/etc/init/rcS.conf文件:

wkiom1wflsqcpmfmaakx3qwhukm313.jpg


設(shè)定系統(tǒng)運(yùn)行級(jí)別:

1
2
3
4
5
6
7
8
9
10
0-6:7個(gè)運(yùn)行級(jí)別:
  0:關(guān)機(jī);
  1:single usermode,,single,,s,S,,不啟動(dòng)網(wǎng)絡(luò)功能,,不啟動(dòng)用戶認(rèn)證,單用戶模式(維護(hù)模式),;
  2:multi usermode,,不支持NFS功能;
  3:完全多用戶模式,,文本接口,,不啟動(dòng)圖形界面;
  4:未使用,;預(yù)留級(jí)別,;
  5:完全多用戶模式,圖形接口,;
  6:重啟,;
#init:切換運(yùn)行級(jí)別;

 


 

六,、/etc/rc.d/rc.sysinit:系統(tǒng)初始化腳本

查看/etc/rc.d/rc.sysinit文件部分內(nèi)容:

wkiom1wflouyloqzaahw0zz0d6c569.jpg


初始化設(shè)置流程:

1
2
3
4
5
6
7
8
9
10
11
設(shè)定主機(jī)名:讀取/etc/sysconfig/network文件中的HOSTNAME參數(shù),,并以之設(shè)定主機(jī)名;
打印文本歡迎信息:
激活SELinux和udev,;
掛載/etc/fstab文件中定義的其他文件系統(tǒng),;
激活swap,;
檢測(cè)根文件系統(tǒng),并以讀寫方式重新掛載,;
設(shè)置系統(tǒng)時(shí)鐘,;
根據(jù)/etc/sysctl.conf設(shè)置內(nèi)核參數(shù);
激活LVM和RAID設(shè)備,;
加載額外設(shè)備的驅(qū)動(dòng)程序,;
清理操作;


七,、啟動(dòng)內(nèi)核模塊:

  依據(jù)/etc/modprobe.d/*.conf文件裝載內(nèi)核模塊:

wkiol1wfmqgt1vtqaaeiipq4jz0612.jpg


八,、執(zhí)行指定運(yùn)行級(jí)別的腳本程序:

  /etc/rc.d/rc#.d/:?jiǎn)?dòng)指定的默認(rèn)級(jí)別的默認(rèn)為啟動(dòng)的服務(wù),停止指定的級(jí)別下默認(rèn)為關(guān)閉的服務(wù),;


  查看/etc/rc.d/rc3.d/目錄:

wkiol1wfmu7wynigaarprzch5zg810.jpg


1,、目錄中為鏈接文件指向服務(wù)腳本:

1
2
3
4
S##:默認(rèn)啟動(dòng)的服務(wù);
K##:默認(rèn)停止的服務(wù),;
##:01-99,,數(shù)字越小,越優(yōu)先啟動(dòng)或關(guān)閉,;
  先啟動(dòng)的后關(guān)閉(自動(dòng)解決依賴關(guān)系),;


2、chkconfig:創(chuàng)建或改變連接文件,;

1
2
3
4
5
6
7
8
9
10
11
#chkconfig --add SRV_SCRIPT:創(chuàng)建,;
#chkconfig --del SRV_SCRIPT:刪除;
#chkconfig SRV_SCRIPT {on|off}:開(kāi)機(jī)自動(dòng){啟動(dòng)|關(guān)閉},;
  默認(rèn)為2345級(jí)別;
  --level######
腳本如果期望能夠被chkconfig命令使用,,要在腳本中添加如下行:
  #chkconfig:- 85 15
    -:當(dāng)此腳本由chkconfig控制時(shí),,默認(rèn)哪些級(jí)別就是開(kāi)啟的;
    85:?jiǎn)?dòng)優(yōu)先級(jí),;
    15:關(guān)閉優(yōu)先級(jí),;


 

九、/etc/rc.d/rc.local

  是一個(gè)腳本,,通常為系統(tǒng)啟動(dòng)完成的最后運(yùn)行一個(gè)腳本,;

    定義一些組合鍵的功能:通常是Ctrl+Alt+Delete

    初始化字符終端,;

    如果有需要,,啟動(dòng)圖形終端;


十,、/bin/logon

  登陸程序:顯示登陸提示符,,等待用戶輸入usernamepasswd,;

wkiol1wfmutseiwnaab2drt-_y0654.jpg


本文出自 “小馬的學(xué)習(xí)記錄” 博客,請(qǐng)務(wù)必保留此出處http://masachencer.blog.51cto.com/8683770/1672797

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,,所有內(nèi)容均由用戶發(fā)布,,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式,、誘導(dǎo)購(gòu)買等信息,,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,,請(qǐng)點(diǎn)擊一鍵舉報(bào),。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多