Kernel panic – not syncing: Attempted to kill init

某年的某日,俺重啓虛擬機上的系統,啪啪,報錯。系統啓動不起來:
linux

152205805.jpg

重裝系統,不甘心,正好趁這個機會,深刻了解一下Linux系統,Google咯shell

看到有以下幾種解決:ubuntu

方案一:centos

系統啓動的時候,按下‘e’鍵進入grub編輯界面,編輯grub菜單,選擇「kernel /vmlinuz-2.6.23.1-42.fc8 ro root=/dev/vogroup00/logvol00 rhgb quiet」 一欄,按‘e’鍵進入編輯,在末尾增長enforcing=0,即:
kernel /vmlinuz-2.6.23.1-42.fc8 ro root=/dev/vogroup00/logvol00 rhgb quiet enforcing=0
按‘b’鍵繼續引導,OK順利前進。ide

不用我,我試過,對我來講不行ui

方案二:spa

將方案一中的enforcing=0換成selinux=0命令行

固然要是這麼簡單我就不寫博文了3d

方案三code

出現:Kernel Panic -- not syncing: attempted to kill init 而後就停那裏不走了。在網上查了好多資料都不能夠。從昨天到今天整了近20個小時,原本想還不如重作個系統得了,可是沒有獲得客戶受權,仍是不能亂搞滴~有一些方案是編輯grub,不過試了N種都不行。就決定放棄了。後來在csdn 仍是51cto上看到一個方法最終能夠了。其間的過程還真是一波三折..
  首先要進入系統,而後才能編輯/etc/sysctl.conf.那就找系統盤引導吧。不巧的是,這個品牌機的光驅是cd的,又沒有多餘的sata口,而機房只有centos 5.3 5.4 dvd 盤,根本無法驅動,汗~。後來意外發現debian 5.0的cd盤。反正都是一樣的內核,死馬當活馬醫吧。出現安裝界面時,選擇rescue mode ,而後一大堆的下一步以後終於看到命令行界面了嘿嘿 !
   不過令我納悶的是vi命令不能用。。按理說debian應該是支持vi編輯命令的(主要我仍是菜鳥)。後來只好用nano命令了。cd 到etc目錄發現下邊沒有sysctl.conf這個文件。抱着試試的態度,nano sysctl.conf 新建一個吧,在裏邊輸入 kelnel panic=30 kernel sysrq=1 保存退出。重啓,終於跳出那個報錯,看到了 久違的login界面啦,哈哈...這其中還有不少原理,我不懂,我知道本身仍是菜鳥級別,想學好linux也不是一朝一夕的事。不過還要給本身慶祝下,終於把這個問題解決了。

暫時沒試,先放一下

方案四:

http://askubuntu.com/questions/92946/cannot-boot-because-kernel-panic-not-syncing-attempted-to-kill-init

At the GRUB screen select the entry you wish to boot in to (most likely the one that's selected as default), press e and then remove 'quiet' and 'splash' from the kernel line if present. You can then press Ctrl-X to boot. This might display a little more information that could be useful. Edit: tumbleweed's suggestion is better, try rescue mode

按照這種操做,看到詳細報錯以下:

154848939.jpganzh

按照如上提示啓動系統,進入了以下界面:

155116166.jpg

再該shell中,發現幾乎全部的數據都沒了,/etc目錄下沒剩幾個文件了。幾乎全部的命令也沒了

164708961.jpg

難道是在該界面全部的數據都被屏蔽掉了,仍是全部的數據不明緣由的原本就消失了,一樣的方法(即刪除quiet)在另外的虛擬系統中操做下,是正常啓動的!!!

難道果真是磁盤數據都丟失了

方案五:

雖然和個人報錯有點不同,但仍是把這種解決問題的方法寫下來吧

http://loofeer.blog.51cto.com/707932/996789

昨天修改了SELinux設置,結果致使系統從新啓動沒法啓動,提示kernel panic - not syncing:Attempted to kill init。相似window的藍屏。以下圖:

091134297.jpg

幸虧手裏有一張redhat的系統安裝盤,果斷使用rescue模式解救。大體過程爲加載redhat安裝盤,進入rescue模式,按照提示用安裝盤啓動系統,掛載硬盤,而後進入shell模式修改配置文件。

接下來就進入shell了,能夠修改配置文件了,而後從新啓動系統就能夠正常啓動了。

091502743.jpg

方案六:

我以前的猜測是fstab文件根分區掛載出錯,致使系統沒法啓動!通常出現Kernel panic,是內核沒有硬盤的驅動形成的,還有一個可能,就是grub的配置裏面,root指向有問題!

好吧!rescure mode看看

進入後,虛驚一場!系統文件都還在,應該不是上面說的全部的文件丟失形成的,如今應該肯定是/掛在出錯或者是grub配置問題,好吧,先分析  /   掛載問題


磁盤信息

111450102.jpg

掛載信息

111322819.jpg

查看每一個分區對應的label name

111325580.jpg

查看/etc/fstab文件

111328826.jpg

經過上面幾個命令的分析,sda3應該爲根分區  / ;咱們看下sda3的UUID

112608680.jpg

能夠看到根分區的UUID同fstab的UUID不一致

列出磁盤與UUID的關係

122650432.jpg

我作了以下兩種修改

1:vi fstab

直接修改a727d.........  掛在  /  的 sda3的uuid改成4b82e312.............................

reboot重啓,不行,仍是之前的錯誤界面

2:從新生成uuid

151924939.jpg

能夠看到sda3從新生成的UUID爲ae325b33..............

vi fstab修改/ 的 uuid爲ae325b33...........

reboot重啓,哦哦,仍是失敗,返回之前報錯界面

看來啓動參數那裏也錯了

重啓後任意鍵到達內核配置,修改root=uuid=xxxxxxxxxxxxxxxxxxxxxxxxxx(上面生成的uuid),啓動,哈哈,總算看到點不同的東西了

152358564.jpg

看到出現kernel panic報錯以前報的就是這個錯!hehe

這個unable to reslove 'uuid=XXXXXXXXXX'是什麼東東呀!!!!

想也不用想,確定是除根分區之外其餘分區uuid錯誤!!!按照以前方法修改試試!!先肯定分區是哪一個!

153243215.jpg

根據fstab能夠看到是掛在到/datas目錄上的分區出現問題!根據fdisk -l能夠到時sda2掛在到datas目錄下的!

首先思路是看能不能先卸載這個分區,發現卸載不了,那就從新生成uuid試下,也不行,看圖

154048170.jpg

咋辦呀這!在fstab中刪除該行???先不急,Google看下該分區出現了啥問題!

嘿嘿,有點眉目了,看以下解釋

is a swap partition, which therefore doesn't have a file system (it's formatted as swap), so it, too, cannot be read by e2label.

雖然個人不是swap,可是聯想到以前我作過一次DRBD,將該分區格式化了,呵呵,沒辦法,fstab刪除掉報uuid錯的那一行試下

vi fstab準備刪除哪一行的時候,卻報錯該分區爲只讀,好吧,先從新掛組mount / -o remount,rw後vi fstab dd刪除後

mount / -o remount,ro!!!!!!!!!修改完成,準備從新啓動,但這個時候又想到一個問題,就是重啓後以前在修改啓動參數是root的uuid仍是否已改變,我是否要找到啓動參數的文件/etc/grub.conf永久修改呢!

不看不知道,一看嚇一跳/boot分區下的文件全都沒了!!!

這個,咋辦,這個分區是sda1!!!!

恢復/boot仍是先啓動看看!

1,啓動看下;shutdown -r now ,果真不出所料,報最初的錯!修改root UUID

161730982.jpg

161732709.jpg

本覺得修改以後能夠的,爲何又報初始錯!!

靠,救援模式走起

fuc k,rescure mode 下居然/boot分區東西都在,這是啥子狀況!!!不懂,仔細檢查看下

170554563.jpg

原來是uuid寫錯了,填寫正確的uuid,修改成硬盤啓動,OK!!完美啓動

170558984.jpg

下次啓動應該還會報錯,修改/etc/boot/grub/grub.conf文件便可!!!!!!!!!!!!!

試驗成功!!!

相關文章
相關標籤/搜索