Linux中的引導過程與修復方法

2021-10-10 11:51:56 字數 3265 閱讀 4941

二、grub2 檔案引導與修復

三、核心載入

四、系統初始化映象

五、系統啟動級別

六、超級使用者密碼忘記

不正確的操作會導致系統出現各種問題,在實際情況中,重灌伺服器顯然是不現實的,因此我們需要了解系統啟動原理並據此找到修復的方法。

在啟動程式時,磁頭經過mbr程式的指引跳轉到boot分割槽,開啟系統啟動程式,讀取相應的配置檔案,系統正常啟動,因此當 mbr 資料丟失時,系統會因為找不到啟動分割槽而停止啟動。

mbr=主引導記錄=

0磁軌1扇區446儲存位元組

作用:記錄 grub2 引導檔案的位置

dd if

=/dev/zero of

=/dev/

***(系統磁碟) bs=

446 count=

1 ##清空系統/dev/sda 上的 mbr 資料

此時重啟系統後會停滯導致無法正常啟動

(1)在虛擬機器關閉模式下設定光碟為第一啟動項,應用,從光碟進入系統,選擇挽救模式,輸入以下命令:

chroot /mnt/sysimage

grub2-install /dev/****** #重新安裝grub2檔案到系統硬碟上

(2)執行兩次exit,關閉系統,並選擇硬碟為第一啟動項,啟動系統,發現系統可以正常啟動

檔案儲存路徑:

/boot/grub2/grub.cfg

總引導檔案

/boot/loader/entries/*********.conf

子引導檔案

刪除上述任意乙個檔案都會導致系統無法正常啟動

rm -fr /boot/loader/entries/*********.conf  #刪除子引導檔案
引導:

重啟系統並執行如下指令

set root=

'hd0,msdos1'

linux16 /vmlinuz-

3.10.0-

957.el7.x86_64 ro root=

/dev/nvme0n1p2

initrd16 /initramfs-

4.18.0-

80.el8.x86_64.img

boot

修復:完成上述引導過程後可正常進入系統,但是還需要修復,否則下次重啟還是無法正常啟動

cp /usr/lib/modules/

4.18.0-

193.el8.x86_64/bls.conf /boot/

kerne-install add 核心版本號 核心映象

kernel-install add $(uname -r)

/lib/modules/$(uname -r)

/vmlinuz

rm -fr /boot/grub2/grub.cfg   #刪除總引導檔案
引導:和問題1引導過程相同

修復:grub2-mkconfig >

/boot/grub2/grub.cfg #建立cfg總引導檔案

注意:上述問題出現時,如果沒有重啟系統,可直接用修復過程修復,如果重啟系統可利用上述引導操作進入系統,之後同樣需要進行修復,以保證之後可以正常進入系統載入核心作用:系統初始化硬體裝置,唯讀掛在根目錄下的裝置

下面展示一些內聯**片

模擬問題:

rm -fr /boot/vmlinuz-

$(uname -r)

恢復∶複製系統中usr下的核心檔案到/boot中即可

在關閉模式下選擇光碟為第一啟動項,啟動系統,進入到挽救模式,執行以下命令:

chroot /mnt/sysimage

cp /usr/lib/modules/

$(uname -r)

/vmlinuz /boot/vmlinuz-

$(uname -r)

exit

exit

檔案:

/boot/initramfs-

4.18.0-

80.el8.x86_64.img

作用:載入系統時鐘

載入 selinux

載入系統主機資訊

載入/etc/fstab 檔案中磁碟掛在策略

載入磁碟配額

初始化系統程式開啟開機啟動服務

開啟虛擬控制台

開啟圖形

(1)問題模擬

rm -fr /boot/initramfs-***xx.img #刪除映象檔案,系統無法正常啟動

(2)引導及修復

mkinitrd /boot/initramfs-

$(uname -r)

.img $

(uname -r) #恢復初始化映象檔案

0關機1

單使用者2

無圖形網路模式

3無圖形網路模式

4無圖形網路模式

5有圖形網路模式6重啟

問題模擬:

systemctl set

-default reboot.target

引導及修復:

在開機選擇介面按進入到引導檔案編輯模式

在核心載入選項最後加入啟動級別 5

ctrl+x

systemctl set

-default graphical.target

恢復方法:

1.在開機選擇介面按進入到引導檔案編輯模式

2.在核心載入選項最後刪除到 ro 選項

3.更改 ro--

-->rw

4.加入 rd.

break 引數終止系統啟動進入單使用者模式

5.ctrl+x 啟動

6.chroot /sysroot

7.echo lee| passwd --stdin root

8.touch /

.autorelabel ##當/

.autorelabel 檔案存在 selinux 會重新初始化

linux系統引導過程及引導修復

1.通電 2.bios初始化 對硬體檢測 初始化硬體時鐘 3.磁碟引導 mbr 主引導記錄 0磁軌1扇區446 作用 記錄grub2引導檔案的位置 當mbr資料丟失,系統會因為找不到啟動分割槽而停止啟動 問題模擬方式 系統磁碟 dev sda dd if dev zero of dev bs 446...

Linux系統引導過程及引導修復

1.通電 2.bios初始化 對硬碟檢測 初始化硬體時鐘 3.磁碟引導 mbr 主引導記錄 0磁軌1扇區446 作用 記錄grub2引導檔案的位置 當mbr資料丟失系統會因為找不到啟動分割槽而停止啟動 問題模擬 系統磁碟 dev ads dd if dev zero of dev vda bs 44...

修復受損的linux引導

想來樓主玩linux差不多近20年了,從redhat,mandrke,manjaro,漢化,聽歌 看電視電影 上網 打遊戲 配置印表機等,碰到的問題一一解決了,但是一直對裝好linux後重新安裝windows的grub引導修復覺得不夠完美。現在終於覺得可以了,記錄如下 grubrescu中可以支援非...