linux系統啓動故障恢復

Linux系統啓動過程:

接通電源→硬件自檢(post)→cmos啓動過程順序→MBR引導

用圖示說明:

wKiom1RORxii_R-jAALRWq3VOtY953.jpg

先了解下grub.conf

[root@wang grub]# vim /boot/grub/grub.conf

default=0    

timeout=5  沒有選擇啓動的操作系統超時時間

splashimage=(hd0,0)/grub/splash.xpm.gz  引導菜單背景圖片 

Hiddenmenu  隱藏菜單

title CentOS (2.6.32-431.el6.i686)  開機時候提供的菜單的標籤

        root (hd0,0)  第一個硬盤的第一個分區,即引導分區

        kernel /vmlinuz-2.6.32-431.el6.i686 ro  加載的內核 只讀方式root=UUID=f89c0676-2f69-4ebc-961b-9bd951910958 rd_NO_LUKS  KEYBOARDTYPE=pc根的轉換

KEYTABLE=us rd_NO_MD crashkernel=auto LANG=zh_CN.UTF-8 rd_NO_LVM rd_NO_DM rhgb 圖形的方式引導 quiet 靜默模式

 initrd /initramfs-2.6.32-431.el6.i686.img 初始化包含啓動的鏡像

故障(一)

MBR故障 

[root@wang ~]# dd if=/dev/zero of=/dev/sda bs=446 count=1 模擬MBR故障

[root@wang ~]init 6  重啓

wKioL1ROR3rRbxLMAAD39IhXrtg333.jpg

無法啓動

需要插入安裝光盤從光盤啓動修復

wKioL1ROR4eBZpQwAAGwgVQrdpc245.jpg

選擇第3個 rescue install system

wKioL1ROR5uySI-SAADwyG3uzuw836.jpg

選擇English

wKiom1ROR12jxoB1AACofSdExn0935.jpg

選擇us

wKioL1ROR7-T4WU9AACmPaUtwSg138.jpg

選擇no 不需要開啓網絡

wKiom1ROR3bjNr20AAH2UX2N5ZI737.jpg

選擇continue

wKiom1ROR3-gx-TMAAEWKSI3gBQ884.jpg

Ok

wKioL1ROR92RhXZdAAByz0yN1rI300.jpg

ok

wKiom1ROR5KTHJoCAACmlXo1agg779.jpg

選擇shell start shell

wKioL1ROR_HRSmwPAAGUjMN1T-k626.jpg

具體命令爲

chroot  /mnt/sysimage/ 切換到系統掛載的目錄

grub-install /dev/sda   安裝grub

  exit   退出  

exit   退出  

wKiom1ROR6bAyWAwAACL8Y5QL60662.jpg

然後選擇reboot

故障(二)

  grub.conf錯誤 模擬grub錯誤

[root@wang ~]# ll /etc/grub.conf  /boot/grub/grub.conf 

-rw-------. 1 root root 737 Jul  9 02:41 /boot/grub/grub.conf

lrwxrwxrwx. 1 root root  22 Jul  9 02:41 /etc/grub.conf -> ../boot/grub/grub.conf

2目錄的文件對應於一個文件(一個是鏈接文件)

[root@wang ~]# mv /boot/grub/grub.conf  /tmp 移動到其他的目錄,如同刪除

[root@wang ~]# init 6  重啓

wKioL1ROSAiAWiYyAAC2jp8vSmw199.jpg

出現這個說明第一階段(mbr)完好,第二階段出現問題

wKiom1ROR7-BTigRAADxbA7kcTk208.jpg

先輸入root (    按table鍵有提示說明

再輸入 roothd0,  按table鍵有提示說明

分辨哪個分區可能是引導分區

wKioL1ROSByz3p_UAAEcGul_Lbk214.jpg

然後輸入kernel 位置 在/後面輸入vmtable鍵看是否能補齊能補齊說明前面選擇的路徑是對的

然後再 ro(只讀模式)quiet(靜默模式) root=/dev/sda2 (指定根目錄)

Initrd /initable鍵補齊   (指定驅動位置)

  boot 試下能否啓動

可以進入系統。但是如果再重啓的話還是出現上面的情況,這時需要重建grub菜單

[root@wang ~]# cd /boot/grub/   

[root@wang grub]# vim grub.conf  進入grub目錄,編輯grub.conf文件

wKiom1ROR9GD-PAIAAChlxjtPck094.jpg

編輯爲如此即可

default=0

timeout=5    菜單超時時間

splashimage=(hd0,0)/boot/grub/splash.xpm.gz    背景界面

 title centos  標題

 root (hd0,0)   根目錄

kernel /vmlinuz-2.6.32-431.el6.i686 ro quiet rhgb root=/dev/sda2  內核文件位置

initrd /initramfs-2.6.32-431.el6.i686.img  驅動文件位置

然後init 6 重啓就可以成功進入

故障(三)

grub目錄丟失  模擬grub目錄丟失

                                          

 [root@wang ~]# cd /boot/

[root@wang boot]# mv grub /tmp  grub移動模擬丟失目錄

[root@wang boot]# init 6

wKiom1ROR-DD1iATAAAwexXMRLQ638.jpg

出現這樣的情況,放上系統盤進入救援模式選擇從光盤啓動,可以調bios光盤爲第一啓動項,也可以開機按f12選擇(部分機器可能沒有)

wKiom1ROSHKzA1tjAAGwgVQrdpc110.jpg

選擇救援模式

進入救援模式shell方式和上面一樣!

wKioL1ROST3yx1QyAAD5TREGHe4866.jpg

chroot /mnt/sysimage  切換到根目錄

grub-install --root-directory=/ /dev/sda   安裝grub相關的目錄

wKiom1ROSPLgkm-YAAGKY7CQc-U291.jpg

然後ls  /boot 有了grub目錄

wKioL1ROSVKBWV4aAADYZRVV4Qg022.jpg

 grub目錄下也有文件,但是少了個grub.conf

然後exit

 exit重啓

wKiom1ROSQuCTMCuAAGvRUUYJzY436.jpg

選擇第四項選擇從本地硬盤啓動

進入

wKiom1ROSRazwruLAADRA7pcMII469.jpg

然後和故障(二)的情況一樣,解決方法一樣 即

wKioL1ROSXajiA_-AAEG91asBUU488.jpg

使用livecd光盤修復

 [root@wang ~]# cd /boot/

[root@wang boot]# mv grub /tmp  grub移動模擬丟失目錄

[root@wang boot]# init 6

使用livecd啓動  可用usb啓動,usb需要設置pe啓動

wKioL1ROSYCAMBQtAAM3R3MnEoY524.jpg

選擇第二個進入

wKiom1ROSTryuD1ZAAFe8-fmvzU418.jpg

選擇命令行模式

wKioL1ROSZ6Ao0TlAACi62qH3L8423.jpg

  su -    獲取root

  fdisk -l   查看所有硬盤信息,以確定boot分區的設備目錄

 wKiom1ROSZ_AsObxAAC4dubkJpE348.jpg

Boot分區爲 /dev/sda1

mkdir  /mnt/boot

mount  /dev/sda1  /mnt/boot

  ls-l /mnt/boot   查看下掛載是否正確

Root 分區爲 /dev/sda2 

 mkdir /mnt/root

mount /dev/sda2  /mnt/root

wKioL1ROSm-yZs5_AACW7tcVGcQ332.jpg

沒有grub目錄

grub-install --root-directory=/mnt  /dev/sda  安裝grub針對/dev/sda

wKiom1ROSjbQIfK0AADxAiHlOAQ880.jpg

ls查下,已經有目錄了

wKiom1ROSkrBn1i6AADFsNiwcrw970.jpg

沒有grub.conf需要自己手工編輯

wKiom1ROSlrQkPXhAABLv5HMOLQ904.jpg

進入grub目錄下編輯grub.conf

wKioL1ROSviSAMXLAADRPZv7-vk822.jpg

編輯爲如此即可(同上)然後保存退出重啓電腦即可

故障(四)

/etc/fstab 文件錯誤導致無法開機

   vim  /etc/fstab 

編輯這個文件

wKiom1ROSrCyxhmFAAJhAvPAcDM894.jpg

隨便輸入東西,模擬錯誤

然後輸入init 6 重啓,系統無法啓動,用livecd光盤啓動修復

從本地硬盤啓動時

wKioL1ROSw2jwcD1AAFMiPH1noM554.jpg

 

e

 

wKiom1ROSsPxNm3CAAGCxpdw-HA234.jpg

rhgb刪除,查看系統進程加載情況,以確定系統問題

wKioL1ROSyLDGiIKAAGYbCoeNWA523.jpg

修改完成 按b引導進入

 

wKioL1ROSyuQs1EeAACWeMB8KdQ978.jpg

發現問題

/etc/fstab 錯誤

livecd進入 

wKioL1ROSzbhLcoMAAM3R3MnEoY783.jpg

第二個選項進入

進入命令行方法同上

wKioL1ROS5nRB3OCAADXaLAuX5Y645.jpg

 

su -   用管理員權限

fdisk -l   顯示硬盤信息判斷哪個是根分區

mkdir  /mnt/root

mount  /dev/sda2 /mnt/root   掛載根分區

wKioL1ROS7yg_lvnAADP8J0G2VI629.jpg

編輯fstab

 

wKiom1ROS3HghVnNAAJdtk-uw7A705.jpg

查看文件,錯誤內容刪除保存即可

wKiom1ROS3_QiSjQAAJB7HLP0yE472.jpg

重啓成功進入系統

故障(五)

Root口令丟失 

開機在5秒內按任意鍵進入grub菜單

wKioL1ROS97jk4ABAAExU_Mg13s452.jpg

e

wKiom1ROS5WioQynAAG2Pe4ZWsE343.jpg

選第2個再按e

wKiom1ROS6SyZ6alAAEXVr6cfpc098.jpg

在後面輸入或者single 進入單用戶模式

wKioL1ROTAXh0WL-AAEjb2_Vzfk708.jpg

回車,再按b進行引導啓動

wKiom1ROS7qzL5irAACJMr6dqw4225.jpg

可以看出來進入了單用戶模式

wKiom1ROS8jgi7WEAACUOuEACUw400.jpg

可以使用passwd root  重新設置密碼

也可以使用 passwd -d root  刪除root賬號

問題解決。


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