欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

VMware安裝kali過程報錯Kernel panic-not syncing fatal exception in interrupt問題

 更新時間:2024年06月20日 14:53:44   作者:發(fā)芽ing的小啊嗚  
這篇文章主要介紹了VMware安裝kali過程報錯Kernel panic-not syncing fatal exception in interrupt問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教

Kernel panic-not syncing fatal exception in interrupt問題解決

問題描述

在vmware8中安裝kali2020在進入圖形化界面安裝之后不久就顯示出錯界面。

解決方法

升級更新VMware workstation到最新版本成功解決。

實踐親測有效故記錄一下,如果還是無法解決參見↓↓↓↓↓↓↓↓

Linux Kernel Panic報錯解決思路

Linux雖然沒有藍(lán)屏現(xiàn)象,不過Kernel報錯有時也會讓人頭疼。有時重啟后正常,linux系統(tǒng)運行一段時間后又down了,總不能出現(xiàn)問題就reboot啊。

我從網(wǎng)上搜集一下資料,整理了出來,希望大家能在評論與我交流您的看法與經(jīng)驗。

什么是Kernel Panic?

wiki:

A kernel panic is an action taken by an operating system upon detecting an internal fatal error from which it cannot safely recover. The term is largely specific to Unix and Unix-like systems; for Microsoft Windowsoperating systems the equivalent term is “Bug check” (or, colloquially, “Blue Screen of Death“).

The kernel routines that handle panics (in AT&T-derived and BSD Unix source code, a routine known as panic()) are generally designed to output an error message to the console, dump an image of kernel memory to disk for post-mortemdebugging and then either wait for the system to be manually rebooted, or initiate an automatic reboot. The information provided is of highly technical nature and aims to assist a system administrator or software developer in diagnosing the problem.

Attempts by the operating system to read an invalid or non-permitted memory address are a common source of kernel panics. A panic may also occur as a result of a hardware failure or a bug in the operating system. In many cases, the operating system could continue operation after memory violations have occurred. However, the system is in an unstable state and rather than risking security breaches and data corruption, the operating system stops to prevent further damage and facilitate diagnosis of the error.

The kernel panic was introduced in an early version of Unix and demonstrated a major difference between the design philosophies of Unix and its predecessor Multics. Multics developer Tom van Vleck recalls a discussion of this change with Unix developer Dennis Ritchie:

I remarked to Dennis that easily half the code I was writing in Multics was error recovery code. He said, “We left all that stuff out. If there’s an error, we have this routine called panic, and when it is called, the machine crashes, and you holler down the hall, ‘Hey, reboot it.’”[1]

The original panic() function was essentially unchanged from Fifth Edition UNIX to the VAX-based UNIX 32V and output only an error message with no other information, then dropped the system into an endless idle loop. As the Unixcodebase was enhanced, the panic() function was also enhanced to dump various forms of debugging information to the console.

panic是英文中是驚慌的意思,Linux Kernel panic正如其名,linux kernel不知道如何走了,它會盡可能把它此時能獲取的全部信息都打印出來。

有兩種主要類型kernel panic:

  • 1.hard panic(也就是Aieee信息輸出)
  • 2.soft panic (也就是Oops信息輸出)

常見Linux Kernel Panic報錯內(nèi)容

Kernel panic-not syncing fatal exception in interrupt
kernel panic – not syncing: Attempted to kill the idle task!
kernel panic – not syncing: killing interrupt handler!
Kernel Panic – not syncing:Attempted to kill init !

什么會導(dǎo)致Linux Kernel Panic?

只有加載到內(nèi)核空間的驅(qū)動模塊才能直接導(dǎo)致kernel panic,你可以在系統(tǒng)正常的情況下,使用lsmod查看當(dāng)前系統(tǒng)加載了哪些模塊。

除此之外,內(nèi)建在內(nèi)核里的組件(比如memory map等)也能導(dǎo)致panic。

因為hard panic和soft panic本質(zhì)上不同,因此我們分別討論。

hard panic

一般出現(xiàn)下面的情況,就認(rèn)為是發(fā)生了kernel panic:

  • 機器徹底被鎖定,不能使用
  • 數(shù)字鍵(Num Lock),大寫鎖定鍵(Caps Lock),滾動鎖定鍵(Scroll Lock)不停閃爍。
  • 如果在終端下,應(yīng)該可以看到內(nèi)核dump出來的信息(包括一段”Aieee”信息或者”Oops”信息)
  • 和Windows藍(lán)屏相似

原因:

對于hard panic而言,最大的可能性是驅(qū)動模塊的中斷處理(interrupt handler)導(dǎo)致的,一般是因為驅(qū)動模塊在中斷處理程序中訪問一個空指針(null pointre)。一旦發(fā)生這種情況,驅(qū)動模塊就無法處理新的中斷請求,最終導(dǎo)致系統(tǒng)崩潰。

信息收集

根據(jù)panic的狀態(tài)不同,內(nèi)核將記錄所有在系統(tǒng)鎖定之前的信息。因為kenrel panic是一種很嚴(yán)重的錯誤,不能確定系統(tǒng)能記錄多少信息,下面是一些需要收集的關(guān)鍵信息,他們非常重要,因此盡可能收集全,當(dāng)然如果系統(tǒng)啟動的時候就kernel panic,那就無法只知道能收集到多少有用的信息了。

  • /var/log/messages: 幸運的時候,整個kernel panic棧跟蹤信息都能記錄在這里。
  • 應(yīng)用程序/庫 日志: 可能可以從這些日志信息里能看到發(fā)生panic之前發(fā)生了什么。
  • 其他發(fā)生panic之前的信息,或者知道如何重現(xiàn)panic那一刻的狀態(tài)
  • 終端屏幕dump信息,一般OS被鎖定后,復(fù)制,粘貼肯定是沒戲了,因此這類信息,你可以需要借助數(shù)碼相機或者原始的紙筆工具了。

如果kernel dump信息既沒有在/var/log/message里,也沒有在屏幕上,那么嘗試下面的方法來獲取(當(dāng)然是在還沒有死機的情況下):

如果在圖形界面,切換到終端界面,dump信息是不會出現(xiàn)在圖形界面的,甚至都不會在圖形模式下的虛擬終端里。

確保屏幕不黑屏,可以使用下面的幾個方法:

  • setterm -blank 0
  • setterm -powerdown 0
  • setvesablank off

從終端,拷貝屏幕信息(方法見上)

完整棧跟蹤信息的排查方法

棧跟蹤信息(stack trace)是排查kernel panic最重要的信息,該信息如果在/var/log/messages日志里當(dāng)然最好,因為可以看到全部的信息,如果僅僅只是在屏幕上,那么最上面的信息可能因為滾屏消失了,只剩下棧跟蹤信息的一部分。如果你有一個完整棧跟蹤信息的話,那么就可能根據(jù)這些充分的信息來定位panic的根本原因。要確認(rèn)是否有一個足夠的棧跟蹤信息,你只要查找包含”EIP”的一行,它顯示了是什么函數(shù)和模塊調(diào)用時導(dǎo)致panic。

使用內(nèi)核調(diào)試工具(kenrel debugger ,aka KDB)

如果跟蹤信息只有一部分且不足以用來定位問題的根本原因時,kernel debugger(KDB)就需要請出來了。

KDB編譯到內(nèi)核里,panic發(fā)生時,他將內(nèi)核引導(dǎo)到一個shell環(huán)境而不是鎖定。這樣,我們就可以收集一些與panic相關(guān)的信息了,這對我們定位問題的根本原因有很大的幫助。

使用KDB需要注意,內(nèi)核必須是基本核心版本,比如是2.4.18,而不是2.4.18-5這樣子的,因為KDB僅對基本核心有效。

soft panic

癥狀:

  • 沒有hard panic嚴(yán)重
  • 通常導(dǎo)致段錯誤(segmentation fault)
  • 可以看到一個oops信息,/var/log/messages里可以搜索到’Oops’
  • 機器稍微還能用(但是收集信息后,應(yīng)該重啟系統(tǒng))

原因:

凡是非中斷處理引發(fā)的模塊崩潰都將導(dǎo)致soft panic。在這種情況下,驅(qū)動本身會崩潰,但是還不至于讓系統(tǒng)出現(xiàn)致命性失敗,因為它沒有鎖定中斷處理例程。導(dǎo)致hard panic的原因同樣對soft panic也有用(比如在運行時訪問一個空指針)

信息收集:

當(dāng)soft panic發(fā)生時,內(nèi)核將產(chǎn)生一個包含內(nèi)核符號(kernel symbols)信息的dump數(shù)據(jù),這個將記錄在/var/log/messages里。為了開始排查故障,可以使用ksymoops工具來把內(nèi)核符號信息轉(zhuǎn)成有意義的數(shù)據(jù)。

為了生成ksymoops文件,需要:

  • 從/var/log/messages里找到的堆棧跟蹤文本信息保存為一個新文件。確保刪除了時間戳(timestamp),否則ksymoops會失敗。
  • 運行ksymoops程序(如果沒有,請安裝)
  • 詳細(xì)的ksymoops執(zhí)行用法,可以參考ksymoops(8)手冊。

Kernel panic實例

今天就遇到 一個客戶機器內(nèi)核報錯:“Kernel panic-not syncing fatal exception”

重啟后正常,幾個小時后出現(xiàn)同樣報錯,系統(tǒng)down了,有時重啟后可恢復(fù)有時重啟后仍然報同樣的錯誤。

我先來解釋一下什么是fatal exception?

“致命異常(fatal exception)表示一種例外情況,這種情況要求導(dǎo)致其發(fā)生的程序關(guān)閉。通常,異常(exception)可能是任何意想不到的情況(它不僅僅包括程序錯誤)。致命異常簡單地說就是異常不能被妥善處理以至于程序不能繼續(xù)運行。

軟件應(yīng)用程序通過幾個不同的代碼層與操作系統(tǒng)及其他應(yīng)用程序相聯(lián)系。當(dāng)異常(exception)在某個代碼層發(fā)生時,為了查找所有異常處理的代碼,各個代碼層都會將這個異常發(fā)送給下一層,這樣就能夠處理這種異常。如果在所有層都沒有這種異常處理的代碼,致命異常(fatal exception)錯誤信息就會由操作系統(tǒng)顯示出來。這個信息可能還包含一些關(guān)于該致命異常錯誤發(fā)生位置的秘密信息(比如在程序存儲范圍中的十六進制的位置)。這些額外的信息對用戶而言沒有什么價值,但是可以幫助技術(shù)支持人員或開發(fā)人員調(diào)試程序。

當(dāng)致命異常(fatal exception)發(fā)生時,操作系統(tǒng)沒有其他的求助方式只能關(guān)閉應(yīng)用程序,并且在有些情況下是關(guān)閉操作系統(tǒng)本身。當(dāng)使用一種特殊的應(yīng)用程序時,如果反復(fù)出現(xiàn)致命異常錯誤的話,應(yīng)將這個問題報告給軟件供應(yīng)商。 ”

而且此時鍵盤無任何反應(yīng),必然使用reset鍵硬重啟。

panic.c源文件有個方法,當(dāng)panic掛起后,指定超時時間,可以重新啟動機器

方法:

#vi /etc/sysctl.conf  添加

kernel.panic = 20 #panic error中自動重啟,等待timeout為20秒
kernel.sysrq=1 #激活Magic SysRq  否則,鍵盤鼠標(biāo)沒有響應(yīng)

按住 [ALT]+[SysRq]+[COMMAND], 這里SysRq是Print SCR鍵,而COMMAND按以下來解釋!

  • b – 立即重啟
  • e – 發(fā)送SIGTERM給init之外的系統(tǒng)進程
  • o – 關(guān)機
  • s – sync同步所有的文件系統(tǒng)
  • u – 試圖重新掛載文件系統(tǒng)

配置一下以防萬一。

很多網(wǎng)友安裝linux出現(xiàn)“Kernel panic-not syncing fatal exception in interrupt”是由于網(wǎng)卡驅(qū)動原因。

解決方法:將選項“Onboard Lan”的選項“Disabled”,重啟從光驅(qū)啟動即可。

等安裝完系統(tǒng)之后,再進入BIOS將“Onboard Lan”的選項給“enable”,下載相應(yīng)的網(wǎng)卡驅(qū)動安裝。

如出現(xiàn)以下報錯:

init() r8168 … 

          … …

         … :Kernel panic: Fatal exception

r8168是網(wǎng)卡型號。

在BIOS中禁用網(wǎng)卡,從光驅(qū)啟動安裝系統(tǒng)。再從網(wǎng)上下載網(wǎng)卡驅(qū)動安裝。

#tar  vjxf  r8168-8.014.00.tar.bz2
# make  clean  modules       (as root or with sudo)
      # make  install
      # depmod  -a
      # modprobe  r8168

安裝好系統(tǒng)后reboot進入BIOS把網(wǎng)卡打開。

另有網(wǎng)友在Kernel panic出錯信息中看到“alc880”,這是個聲卡類型。嘗試著將聲卡關(guān)閉,重啟系統(tǒng),搞定。

安裝linux系統(tǒng)遇到安裝完成之后,無法啟動系統(tǒng)出現(xiàn)Kernel panic-not syncing fatal exception。很多情況是由于板載聲卡、網(wǎng)卡、或是cpu 超線程功能(Hyper-Threading )引起的。這類問題的解決辦法就是先查看錯誤代碼中的信息,找到錯誤所指向的硬件,將其禁用。系統(tǒng)啟動后,安裝好相應(yīng)的驅(qū)動,再啟用該硬件即可。

另外出現(xiàn)“Kernel Panic — not syncing: attempted to kill init”和“Kernel Panic — not syncing: attempted to kill idle task”有時把內(nèi)存互相換下位置或重新插拔下可以解決問題。

總結(jié)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • VMware日常操作之克隆虛擬機的2種模式圖文詳解

    VMware日常操作之克隆虛擬機的2種模式圖文詳解

    我們經(jīng)常會安裝集群,或者想快速安裝虛擬機,就可以使用VMware克隆的功能,通過已經(jīng)安裝好的虛擬機來克隆新的虛擬機,這篇文章主要給大家介紹了關(guān)于VMware日常操作之克隆虛擬機的2種模式,需要的朋友可以參考下
    2024-01-01
  • VMware ESXi 6.0 及部署虛擬機安裝教程(圖文)

    VMware ESXi 6.0 及部署虛擬機安裝教程(圖文)

    這篇文章主要介紹了VMware ESXi 6.0 及部署虛擬機安裝教程(圖文),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-02-02
  • VMware15虛擬機橋接模式無法上網(wǎng)問題的解決

    VMware15虛擬機橋接模式無法上網(wǎng)問題的解決

    這篇文章主要介紹了VMware15虛擬機橋接模式無法上網(wǎng)問題的解決,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-05-05
  • 詳解如何從宿主機拖動復(fù)制文件到虛擬機VM中的解決方法

    詳解如何從宿主機拖動復(fù)制文件到虛擬機VM中的解決方法

    本篇文章主要介紹了如何從宿主機拖動復(fù)制文件到虛擬機VM中的解決方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-12-12
  • 關(guān)于vmware workstations與device/credential不兼容啟動報錯的問題

    關(guān)于vmware workstations與device/credential不兼容啟動報錯的問題

    很多朋友問小編VMware和Device不兼容導(dǎo)致vmware workstations啟動虛擬機報錯,怎么解決這個問題呢?直接禁用Device就行了,具體操作細(xì)節(jié)跟隨小編一起通過本文學(xué)習(xí)吧
    2021-07-07
  • Ubuntu16.04 64位下VMware Tools安裝配置圖文教程

    Ubuntu16.04 64位下VMware Tools安裝配置圖文教程

    這篇文章主要為大家詳細(xì)介紹了Ubuntu16.04 64位下VMware Tools安裝配置圖文教程,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-03-03
  • VMWare虛擬機如何網(wǎng)絡(luò)共享給宿主機

    VMWare虛擬機如何網(wǎng)絡(luò)共享給宿主機

    通過VMware虛擬機的網(wǎng)絡(luò)共享功能,可以使宿主機使用虛擬機內(nèi)的VPN連接,實現(xiàn)方法包括在虛擬機中添加橋接和僅主機模式網(wǎng)卡,連接VPN,并將VPN網(wǎng)絡(luò)共享給宿主機,需要對虛擬網(wǎng)絡(luò)編輯器設(shè)置和網(wǎng)絡(luò)適配器屬性進行配置,還需在宿主機中添加相應(yīng)的路由
    2024-10-10
  • vCenter?Server?的?CLI?部署方式圖文詳解

    vCenter?Server?的?CLI?部署方式圖文詳解

    VMware?vCenter?Server是VMware?vSphere的核心組件,負(fù)責(zé)管理ESXi主機和實現(xiàn)高級功能,本文詳細(xì)介紹了vCenter?Server的CLI部署方法,感興趣的朋友一起看看吧
    2024-09-09
  • vmware16虛擬機如何設(shè)置共享本機的文件夾

    vmware16虛擬機如何設(shè)置共享本機的文件夾

    使用VMware虛擬機時,共享主機的文件夾可以方便的在虛擬機和主機之間傳遞文件,本文以vmware16為例給大家分享共享本機的文件夾的詳細(xì)過程,感興趣的朋友跟隨小編一起看看吧
    2021-05-05
  • VM搭建Linux服務(wù)器局域網(wǎng)的實現(xiàn)步驟

    VM搭建Linux服務(wù)器局域網(wǎng)的實現(xiàn)步驟

    本文主要介紹了VM搭建Linux服務(wù)器局域網(wǎng)的實現(xiàn)步驟,文中通過圖文介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-03-03

最新評論