引導過程與服務控制

2021-10-10 21:34:09 字數 3280 閱讀 5736

二、系統初始化程序

三、systemd單元型別

四、執行級別所對應的systemd目標

五、修復mbr扇區故障

六、修復grub引導故障

七、修復故障的方法

伺服器主機開機以後,將根據主機板bios中的設定對cpu、記憶體、顯示卡、鍵盤等裝置進行初步檢測,檢測成功後根據預設的啟動順序移交系統控制權,大多時候會移交給本機硬碟。,.__

總結∶ 檢測出第乙個能夠引 導系統的裝置,比如硬碟或者光碟機

當從本機硬碟中啟動系統時,首先根據硬碟第乙個扇區中mbr(主引導記錄)的設定,將系統控制權傳遞給包含作業系統引導檔案的分割槽;或者直接根據mbr 記錄中的引導資訊呼叫啟動選單(如 grub)。

總結∶ 執行放在mbr扇區裡的啟動grub引導程式

對於linux作業系統來說,grub(統一啟動載入器)是使用最為廣泛的多系統引導器程式。系統控制權傳遞給grub以後,將會顯示啟動選單給使用者選擇,並根據所選項(或採用預設值)載入linux核心檔案,然後將系統控制權轉交給核心。centos 7 採用的是 grub2 啟動引導器。

總結∶ grub引導程式通過讀取grub配置檔案/boot/grub2/grub.cfg,來獲取核心和映象檔案系統的設定和路徑位置

linux核心是乙個預先編譯好的特殊二進位制檔案,介於各種硬體資源與系統程式之間,負責資源分配與排程。核心接過系統控制權以後,將完全掌控整個linux作業系統的執行過程。

centos 7系統中,預設的核心檔案位於"/boot/vmlinuz-3.10.0-514.e17.x86_64"。

總結∶ 把核心和映象檔案系統載入到記憶體中

為了完成進一步的系統引導過程,linux核心首先將系統中的"/sbin/init"程式載入到記憶體中執行(執行中的程式稱為程序),init 程序負責完成整個系統的初始化,最後等待使用者進行登入。

總結∶ 載入硬體驅動程式, 核心把init程序載入到記憶體中執行

●由 linux 核心載入執行/sbin/init 程式

●init程序是系統中第乙個程序,是所有程序的父程序

●init程序的pid(程序標記)號永遠為1

●systemd是linux作業系統的一種init軟體

●centos7中採用全新的systemd啟動方式,取代傳統的sysvinit

●centos7中執行的第乙個init程序是/lib/systemd/systemd

注:套接字就相當於ip加上埠號

●病毒、木馬等造成的破壞

●不正確的分割槽操作、磁碟讀寫誤操作

●找不到引導程式,啟動中斷

●無法載入作業系統,開機後黑屏

●應提前作好備份檔案

●以安裝光碟引導進入急救模式

●從備份檔案中恢復

●mbr中的grub引導程式遭到破壞

●grub.conf檔案丟失、引導配置有誤

●系統引導停滯,顯示"grub>"提示符

●嘗試手動輸入引導命令

●進入急救模式,重寫或者從備份中恢復grub.conf

●向 mbr 扇區中重建grub程式

mbr位於第一塊硬碟(/dev/sda)的第乙個物理扇區處,總共512位元組

1.備份mbr 扇區資料到其它磁碟(/dev/sdb1)

mkdir /backup

mount /dev/ sdb1 /backup

dd if=/dev/sda of=/backup/mbr.bak bs=512 count=1

2.模擬破壞mbr引 導扇區

dd if=/dev/zero of=/dev/sda bs=512 count=1

3.引導介面進入急救模式

從備份檔案中恢復mbr 扇區資料先載入好光碟映象,重啟作業系統,

當出現安裝嚮導介面時,選擇"troubleshooting"選項,再選擇"rescue a centos linux system"選項,進入急救模式選擇"1"選擇 continue並按 enter 鍵繼續

再次按 enter 鍵後將進入帶"sh-4.2#"提示符的 bash shell 環境

sh-4.2# mkdir /backupdir

sh-4.2# mount /dev/sdbl /backupdir #掛載帶有備份檔案的分割槽

sh-4.2# dd if=/backupdir/mbr.bak of=/dev/sda #恢復備份 資料

sh-4.2# exit #執行exit命令退出臨時shell 環境,系統將會自動重啟

方法一:mbr位於第一塊硬碟(/dev/sda)的第乙個物理扇區處,總共512位元組,前446位元組是主引導記錄,分割槽表儲存在mbr扇區中的第447-510位元組

mkdir /bak

mount /dev/sdb1 /bak

dd if=/dev/sda of=/bak/grub.bak bs=446 count=1

##模擬對mrb中的grub引導程式的破壞,但並不破壞分割槽表

dd if=/dev/zero of=/dev/sda bs=446 count=1

#引導介面進入急救模式,從備份檔案中恢復grub引導程式

sh-4.2# mkdir /backupdir

sh-4.2# mount /dev/sdb1 /backupdir

sh-4.2# dd if=/backupdir/grub.bak of=/dev/sda

sh-4.2# exit

方法二∶引導介面進入急救模式,重建grub選單配置檔案

rm -rf /boot/grub2/grub.cfg

#進入急救模式,載入光碟映象,切換到系統根環境

sh-4.2# chroot /mnt/sysimage

#重新將grub引導程式安裝到第一塊硬碟(/dev/sda)的mrb扇區

bash-4.2# grub2-install /dev/sda

#重新構建grub選單的配置檔案

bash-4.2# grub2-mkconfig -o /boot/grub2/grub.cfg

#退出chroot 環境,並重啟

bash-4.2# exit sh-4.2# reboot

#進入急救模式,載入系統映象,切換到系統根環境

sh-4.2# chroot /mnt/sysimage

#重設 root 使用者密碼

bash-4.2# passwd root

引導過程與服務控制

單元型別 副檔名說明 service service 描述乙個系統服務 socket socket 描述乙個程序間通訊的套接字 device device 描述乙個核心識別的裝置檔案 mount mount 描述乙個檔案系統的掛載點 automount automount 描述乙個檔案系統的自動掛載...

引導過程與服務控制

二 linux排除啟動類故障 2.1.5 mbr故障及修復的注意事項 2.2 修復grub引導故障 2.3 遺忘root使用者密碼 三 系統服務控制及切換執行級別 3.2 linux系統的執行系統 四 優化系統啟動 由linux核心載入執行 sbin init程式 init程序是系統中第乙個程序 i...

引導過程與服務控制

引導過程總覽 粗略的說系統的啟動流程 當你按下電源按鍵後計算機硬體會讀取bios或uefi bios來載入硬體資訊及進行硬體系統的自我測試,之後系統會主動的去讀第乙個可啟動的裝置 bios設定 此時就可以讀入啟動引導程式了,啟動引導程式可以指定使用哪個核心檔案來啟動,並實際載入核心到記憶體當中解壓縮...