系統修復

1. BIOS詳解
BIOS(Basic Input/Output System),基本輸入輸出系統,該系統存儲於主板的ROM芯片上,計算機在開機時,會最先讀取該系統,然後會有一個加電自檢過程,這個過程其實就是檢查CPU和內存,計算機最基本的組成單元(控制器、運算器和存儲器),還會檢查其他硬件,若沒有異常就開始加載BIOS程序到內存當中。詳細的BIOS功能,這邊就不說了,BIOS主要的一個功能就是存儲了磁盤的啓動順序,BIOS會按照啓動順序去查找第一個磁盤頭的MBR信息,並加載和執行MBR中的Bootloader程序,若第一個磁盤不存在MBR,則會繼續查找第二個磁盤(PS:啓動順序可以在BIOS的界面中進行設置),一旦BootLoader程序被檢測並加載內存中,BIOS就將控制權交接給了BootLoader程序。

1.系統啓動流程
系統修復

第一步: 電腦通電

第二步: BIOS(主板上的只讀存儲ROM中,basic input or output system)
作用,硬件檢測,激活硬件

第三步: grub系統引導(grub引導分爲兩個階段)
1)階段1 grub磁盤引導階段
mbr(主引導記錄)主引導記錄在硬盤上的0磁道,一扇區,446個字節
(MBR(Master Boot Record),主引導記錄,MBR存儲於磁盤的頭部,大小爲512bytes,其中,446bytes用於存儲BootLoader程序,64bytes用於存儲分區表信息,最後2bytes用於MBR的有效性檢查。
)
1./dev/zero of=/dev/vda bs=446 count=1 可以清空mbr
1)chroot /mnt/sysimage切換到真實/環境,
並執行grub2-install /dev/vda
2)階段2 grub文件引導階段
找到/boot分區
讀取/boot/grub2/grub.cfg /etc/grub.cfg
文件丟失,grub2-mkconfig >/boot/grub2/grub.cfg
grub2-mkconfig > /etc/grub.cfg
系統修復系統修復系統修復系統修復

第四步: 內核引導階段:

  1. 啓動內核,只讀掛載/設備
    2.檢測硬件設備
    3.對設備驅動進行初始化
    4.進入系統初始化階段, 掛載
    內核丟失,從新安裝內核安裝包就可以解決
    方法一: rpm -ivh kernel-xxxxx.rpm --force
    方法二:
    1.在virt-manager裏面,將光驅 IDE CDROM1 放在開機啓動項第一位,啓動主機進入挽救模式
    2.chroot /mnt/sysiamge 將系統掛載更改到根目錄下
    3.mount /dev/sr0 /westos 將光盤文件掛載
    4.cd /westos/ 切換到光盤掛載點
    5.ls 查看光盤中的文件
    6.cd Packages/ 切換到安裝包目錄中(記住,不要ls,有4000多個包)
    7.cp kernel-3.10.-123.e17.x86_64.rpm /mnt/
    將這個文件包拷貝到/mnt/下,因爲在光盤目錄中不能進行拆包
    8.cd /mnt/ 切換到/mnt/
    9.ls 查看/mnt/下拷貝過來的文件包
    10.rpm2cpio kernel-3.10.0-123.e17.x86_64.rpm | cpio -id
    拆包
    11.ls 查看包中的文件
    12.pwd 查看當前路徑
    13.cd boot/ 切換到包中的boot/目錄下
    14.ls -l 包中存在內核文件
    15.cp vmlinuz-3.10.0-123.e17.x86_64 /boot/
    將內核文件拷貝到系統的/boot/目錄下

    16.exit 退出chroot更改的根目錄
    exit shell窗口
    系統修復

第五步: 系統初始化階段
1.系統初始化階段加載initrd鏡像
initrd鏡像丟失如何解決?
initramfs-uname -r.img丟失用:
mkinitrd initramfs-uname -r.img uname -r

**方法一:**
1.當系統沒有重新啓動時
uname -r ##系統當前版本
1)mkinitrd /boot/initramfs-`uname −r`.img `uname -r`                            生成系統初始化鏡像
initramfs是/boot/grub2/grub.cfg  文件已經寫好的,不能更改
2)mkinitrd /boot/initramfs-$(uname -r).img $(uname -r)  ##生成系  統初始化鏡像

**方法二:**

1)進入到挽救模式
1..chroot /mnt/sysiamge 使用超級用戶
2.mkinitrd /boot/initramfs-uname −r.img uname -r 生成系統初始化鏡像
重啓速度會慢一點
原因:重新掃描selinux
解決:將/etc/sysconfig/selinux中enforcing改成disabled
系統修復
第六步: 開啓初始化進程systemd
1.開始selinux
2.加載內核參數
3.初始化系統時鐘,鍵盤,主機名稱
4.重新讀寫掛載/設備
5.激活raid,lvm
6.激活配額
啓動multi-user.target.wants中的所有服務(具體開啓的服務取決於系統啓動的級別)
7.開啓虛擬控制檯
8.啓動圖形
如何修改系統啓動級別?
系統啓動級別
(init 0)runlever0.target -> poweroff.target
runlever1.target -> rescue.target
runlever2.target -> multi-user.target
(init 3)runlever3.target -> multi-user.target
runlever4.target -> multi-user.target
(init 5)runlever5.target -> graphical.target
(init 6)runlever6.target -> reboot.target
系統修復系統修復系統修復
方法一: systemctl set-default + 啓動級別
方法二: /etc/systemd/system/default.target

第七步: 用戶名密碼登錄
忘記密碼如何解決?
1.開機按上下健停止讀秒
2.按E進入編輯模式
3.選擇內核啓動行
Linux16 /vmlinuz-xxxxx ro xxxx 改爲:
Linux16 /vmlinuz-xxxxx rw rd.break ##在內核啓動完成後終止系統初始化程序的執行
4.啓動系統 ctrl+x
Chroot /sysroot
Echo westos |passwd --stdin root
Touch /.autorelabel ##重新初始化selinux,當selinux未開啓時不需要操作
系統修復

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章