1. 程式人生 > >Centos 6.5 啟動報錯 "Kernel panic - not syncing: Attempted to kill init"解決辦法

Centos 6.5 啟動報錯 "Kernel panic - not syncing: Attempted to kill init"解決辦法

某一天,開發同事突然告訴我伺服器上自己的虛擬機器連不上了,我登陸到伺服器CAS管理介面,重啟虛擬機器後發現報錯了

問題:Kernel panic - not syncing: Attempted to kill ini

原因:這個問題的主要原因是系統的/lib64/libc-2.12.so/lib64/libc.so.6檔案丟失或者軟連結錯誤

解決辦法:

    一、修改啟動模式,更改為光碟啟動(各種環境大同小異)

    二、用光碟啟動救援模式,進入shell命令列:執行: chroot /mnt/sysinage 報錯

    三、拷貝/lib64/libc-2.12.so/lib64/libc.so.6

檔案

    四、執行: chroot /mnt/sysinage  不會報錯,證明已經修復

過程如下:

  一、修改啟動模式,更改為光碟啟動(各種環境大同小異),我的伺服器裝的是CAS管理平臺,配置如下(如果是其他的請自行百度)

  1、掛載光碟

  

  2、設定為啟動引導後,重啟虛擬機器

  

   二、用光碟啟動救援模式,進入shell命令列:執行: chroot /mnt/sysinage 報錯

  1、選擇Rescue install system 後回車

  

  2、選擇語言:English(預設)

  

  3、選擇鍵盤型別:us(預設)

  

  4、Setup Networking:NO(設定網路根據情況而定,一般來說網路沒問題就不用設定了)

  

  5、Rescue:Continue(繼續)

  1. >選擇Continue,則救援模式程式會自動查詢系統中已有的檔案系統,並把他們掛載到/mnt/sysimage目錄下。

  2. >選擇Read-Only,則會以只讀的方式掛載已有的檔案系統。

  3. >手動掛載則Skip。

  4. >Advanced ,高階選項就不作說明了。

   

  6、原系統掛載路徑/mnt/sysimage,如果想獲得原系統root環境,執行行命令:chroot /mnt/sysimage 即可

  

  7、一直OK,到選擇shell命令列,OK

  

   8、因為/usr/lib64/libc-2.12.so & libc.so.6 -> libc-2.12.so 問題,執行chroot /mnt/sysinage會報錯

  

  三、拷貝/lib64/libc-2.12.so和/lib64/libc.so.6檔案

    cp /lib64/libc-2.12.so /mnt/sysimage/lib64/libc-2.12.so

    cp /lib64/libc.so.6 /mnt/sysimage/lib64/libc.so.6

    注:如果拷貝失敗:用強制拷貝cp -rf 命令

  四、執行: chroot /mnt/sysinage  不會報錯,證明已經修復

     重新啟動虛擬機器,啟動成功