Arch Linux啟動時隨機出現“內核恐慌”的可能解決方案

這篇文章是為了展示如何“修復”幾乎有錯誤的啟動問題 Arch Linux。 如下圖所示:

IMG_20140707_210559

可以看出,這是啟動帶有此問題的操作系統時隨機出現的許多錯誤“組合”之一。 就像在該錯誤中所指出的那樣,它表明“硬件”中可能存在問題,但是,正如我們在該操作系統中眾所周知的那樣,即使不屬於操作系統的錯誤技巧也可以解決。

因此,我將描述我對這個問題的經驗。 根據我的經驗,問題僅在於 Arch Linux 或我在外部測試過的另一個發行版,因為有了我安裝或測試過的任何ubuntu,它開始時都沒有問題。 但是如果我試圖撕裂 Arch Linux 安裝在硬盤驅動器上時,它存在一個問題,必須重新引導大約50次才能使OS正常啟動並可以使用它。

這已經讓我有些問題,因為我只能使用安裝的ubuntu進行測試,而我什至無法完成一半的工作 Arch Linux。 因此,我決定解決此問題並開始調查,尋找存在相同問題的論壇線程,他們還提到這是硬件錯誤,而恰恰是CPU,所以它開始讓我擔心,所以我不得不打開PC並驗證正在發生的事情,但是它沒有幫助。

但是向我展示的是,我不應該放棄的是,如果 Ubuntu 我可以因為 Arch Linux 不(也許 Ubuntu 勝過 ……?)。 所以我開始將引導參​​數寫入內核 Arch Linux, 像: lapic,nomce,intel_idle.max_cstate = 0,disable_cpu_apic,acpi_skip_timer_override,acpi = stric,clk,apm,noapic,acpi = oldboot,acpi-cpufreq,intel_pstate = disable,i8042.noacpi = 1,apmt = ds apm =已復制,acdtpi = 0,apm =已復制pci = nocrs,rhgb,acpi =強制,pnpacpi = XNUMXff 和其他更多…在我所閱讀的論壇中,所有這些都是推薦的。

在我不得不輸入內核參數的文檔之前,我建議您這樣做: https://www.kernel.org/doc/Documentation/kernel-parameters.txt

我發現了一個很有趣的參數,目前我設法啟動了 Arch Linux 沒問題:

linux /boot/vmlinuz-linux root=UUID=fbefe36c-1712-4f3b-b3e3-3eac759d71c9 notsc nomce maxcpus = 0

如此處所示,此參數的作用是在不激活對稱處理模式的情況下將使用限制為cpu。 最初,它工作得很好,直到我使用命令為止 吃豆子-Syyu; 把我扔了 核心傾銷 o 分段故障。

因此,我自動注意到發生了奇怪的事情,因此我開始運行其他進程,直到系統突然完全凍結並且不再起作用,直到重新啟動它為止。 所以我做了同樣的操作,但是這次我設法執行了 HTOP 它顯示了以下內容:

IMG-20140729-WA0001

不出所料,它只顯示一個CPU,因為另一個已禁用它,但是,對於我來說,為什麼程序拋出異常似乎很奇怪 段錯誤, 甚至無法啟動圖形環境; 因此,這至少給了我更多希望,如果我以一種方式設置內核參數,它將引導我 Arch Linux 照常。

因此,我一直嘗試嘗試在列表中編寫的其他參數,直到遇到此參數為止​​,這是目前最好的解決方案:

 linux /boot/vmlinuz-linux root=UUID=fbefe36c-1712-4f3b-b3e3-3eac759d71c9 notsc nomce isolcpus = 1

此參數的作用很簡單,例如在對稱處理中隔離(不停用)CPU的第二個核心,也就是說,將處理負載分配給單個核心,而另一個僅是互補的。 儘管看起來很矛盾,但這並不會對性能造成太大影響,因為這個出色的OS能夠以這種方式運行應用程序:

測試

linux_rlz_compiz

因此,我觀察到的唯一問題是在啟動時發生,是一個或兩個內核崩潰或哎呀。 但與之前必須重新啟動50次相比,我可以認為這是“解決方法”。 對於其餘的內容,到目前為止,它已經允許我使用操作系統並撰寫您現在正在閱讀的這篇文章:-)。

希望他們能對您有所幫助,並且不要離開 GNU / Linux的,這是他們發明的最好的操作系統。 我肯定地說。


發表您的評論

您的電子郵件地址將不會被發表。 必填字段標有 *

*

*

  1. 負責數據:MiguelÁngelGatón
  2. 數據用途:控制垃圾郵件,註釋管理。
  3. 合法性:您的同意
  4. 數據通訊:除非有法律義務,否則不會將數據傳達給第三方。
  5. 數據存儲:Occentus Networks(EU)託管的數據庫
  6. 權利:您可以隨時限制,恢復和刪除您的信息。

  1.   格雷戈里奧·埃斯帕達斯(Gregorio Espadas) 他說:

    非常有趣的信息。 多年來,我從來沒有在ArchLinux中遇到過內核恐慌,但是很高興知道問題出在我身上該怎麼辦。 謝謝!

    1.    基克1n 他說:

      無論如何,我使用Arch已有很長的時間了(沒有Arch就好像是1年)並且沒有內核恐慌。
      謝謝你的提示。

    2.    c4爆炸性 他說:

      正如我在文章中提到的,問題最有可能是由於硬件造成的,因為在我使用的arch中,它也沒有給我這種類型的任何問題。

    3.    拉夫 他說:

      另一個在Arch中取得優異成績的人,我從未遇到過內核恐慌

    4.    原始基礎 他說:

      G使用GNU / Linux已有2年多……使用ArchLinux已有2年了,從沒有內核恐慌..😉

    5.    曼努埃爾·德拉·富恩特 他說:

      我認為內核恐慌更多是由於硬件而不是發行版本身造成的。 我從來沒有在我現在使用的筆記本電腦上看到過恐慌內核,除非我將Ubuntu alpha放入其中(而且Arch Linux也在這裡兩年了)。 另一方面,在我擁有的另一台筆記本電腦中,我放置的任何發行版始終會引起內核恐慌和各種口味的錯誤。

  2.   埃利奧時間3000 他說:

    在Debian上使用內核3.14時,我遇到了內核恐慌問題,此外,每當我打開PC時,都會收到“連接/斷開超時”消息(以及將其關閉時的消息)。

    1.    阿毛裡 他說:

      在Fedora中和在Arch中一樣,這件事在我身上發生了很多,但是我不知道為什麼,而且因為沒有花時間研究或解決這個問題(如果有問題),我沒有什麼區別。

    2.    達薩斯 他說:
  3.   托尼 他說:

    十分感謝你分享這些信息。 我們可以誇耀的很多事情就是這種類型的論壇

  4.   馬努 他說:

    為什麼Arch Linux會發生這種情況? 可能這是不夠的,而這些問題往往是由於系統運行緩慢或系統掛起而使系統陷入困境而出現的。

    1.    拉夫 他說:

      嘿? 你在說什麼? o_O

    2.    阿毛裡 他說:

      簡而言之,Arch是一個KISS發行版,可從操作系統本身進行配置,簡而言之,如果系統很重,那是因為您以這種方式構建它,如果系統有錯誤,那是因為您生成了它們,或者是因為您沒有正確配置某些內容Arch Wiki相當完整,幾年前,西班牙語中沒有很多重要的話題,而且安裝過程更加艱鉅且有些困難,現在一切都變得更加自動化了。
      責怪發行版中的用戶錯誤是……Windows(?)。

      1.    達拉 他說:

        將錯誤歸咎於發行版是一致的,僅僅是因為這是事實。 在對Manjaro遇到類似問題之後,我嘗試了Arch,Antergos和另一個未知的發行版(抱歉,我現在不記得這個名字了),有人建議我向我保證它不會出現問題,但是什麼也沒有。 他們都給它。 在OpenSuse,Fedora,Mint,Mageia和之後嘗試過的所有工具中,它都不會通過。 因此,就我而言,我別無選擇,只能認為這是發行版的錯。 但是,嘿,我沒有妖魔化它或其他任何東西,而且,它確實使我無法使用基於Arch的任何東西,因為我真的很喜歡它,但是那個該死的問題阻止了我。 我也不認為這與硬件有關,因為發生在我們身上的很多人並不是在使用相同的他媽的之前發生的。 好吧,實際上它一定是與硬件有關的東西,但是回到同一件事,如果我沒有進行任何更改並且我在以前沒有使用過的相同設備上遇到了問題,那顯然是由於徹底改變了我的主意。

      2.    胡安 他說:

        “將發行版歸咎於用戶錯誤就是……Windows(?)。”

        我要告訴你,責怪用戶產品錯誤就是蘋果。 老實說,我已經考慮了一千遍了,但是我看不出使用維護者基本上為任何認真目的洗手的東西的優勢。 我說的是,考慮到GPL軟件不提供保修。

        您可以隨意說,但如果是同一情況,則有報導稱iPhone信號不足,而蘋果公司的回應“是您弄錯了”。 如果製作發行版,通常希望提供一些質量和最低的支持,事實是Arch基本上是一個業餘愛好者係統,在該系統中,您可以看到Arch的開發人員樂於打包新東西,但對提供真正的支持卻沒有興趣。 。 每次看到這種類型的帖子,我都會看重我使用的發行版背後的工作。

        是的,如果它不起作用,在更新中停止工作或某些硬件出現故障,則是軟件問題。 一個內核恐慌發行版卻沒有另一個……好吧,是的,很顯然,有一個發行版正在做正確的事,另一個做錯了事。 現在,如果您很高興以90年代的風格使用Linux,那麼每次插入新打印機時,我們都必須重新編譯內核……在那裡。

  5.   馬里奧 他說:

    內核是由開發人員編譯的嗎? 還是你自己的?
    內核恐慌是通過在編譯時未選擇(與)某些組件或未激活某些模塊來支持某些硬件而生成的。 借助對硬件的實踐和知識(您必須打開PC並查看其具有哪些品牌的芯片),就可以構建自定義內核(通過chrooting)。 如果您的計算機上裝有ubuntu和Arch安裝CD,則編譯中的某些內容未激活。

    1.    c4爆炸性 他說:

      它是來自archlinux本身和存儲庫中的庫存內核。

  6.   匿名 他說:

    您正在使用的內核,還有一些硬件不喜歡的東西,您的主板上必須有一些罕見的芯片版本,或者甚至是芯片中的錯誤(通常會發生)。
    這可能是您的BIOS acpi中的一個損壞的表,值班的中國人甚至沒有很好地計算每個表的校驗和是正常的,這些消息通常在引導開始時以$ dmesg -human出現。
    您還應該嘗試使用另一個電源,當過濾失敗時,紋波往往會導致此類故障。
    首先,嘗試更改源,看看會發生什麼情況(如果保持不變),請嘗試配置針對您的硬件的內核,這樣您將在此過程中更好地了解您的PC。

    1.    c4爆炸性 他說:

      感謝您的提示。 順便說一句,它是一台筆記本電腦,我想我應該更換電池。 但是我明白你告訴我的可以幫助我。

  7.   友喜 他說:

    導致我瘋狂的一個內核恐慌部分是新手們和我的舊的,過時的和滿是灰塵的nVidia 6150 SE集成卡的錯誤(我的部分意思是;他們在支持多種圖形芯片方面做得非常出色。像nVidia所擁有的那樣,而所有這些,僅使用逆向工程,而且問題僅在某些具有NV4E芯片組的卡上才會發生。

    您所要做的就是啟動Openbox + Firefox和災難來襲(沒有比在屏幕上看到完全隨機的黑白馬賽克漂亮的多了)。 從Debian,Fedora,Archlinux,Slackware的內核3.6開始,我一直在唱它,現在又在Gentoo中重新進行了驗證(僅安裝在內核3.12中),我不再費心去向內核記錄日誌或花時間寫一些不是胡說八道的東西。

    1.    匿名 他說:

      我為您提供了解決方案,我擁有gentoo和集成nvidia視頻的PC與nouveau驅動程序相同,因此我別無選擇,只能使用封閉的nvidia驅動程序,我的芯片必須使用304.123驅動程序

      00:0d.0 VGA兼容控制器[0300]:NVIDIA Corporation C61 [GeForce 7025 / nForce 630a] [10de:03d6](rev a2)(編程為00 [VGA控制器])

      您必須在編譯內核文件之前先對其進行修補,否則,圖形模式將拒絕啟動。

      這些步驟是:
      #nano -w /usr/src/linux-3.15.7-gentoo/drivers/acpi/osl.c
      在nano內使用ctrl + w搜索此文本,acpi_os_wait_events_complete,而nano將您帶到這一部分:

      無效acpi_os_wait_events_complete(無效)
      {
      flush_workqueue(kacpid_wq);
      flush_workqueue(kacpi_notify_wq);
      }
      EXPORT_SYMBOL(acpi_os_wait_events_complete);

      您需要添加的補丁是從EXPORT,Ctrl +或Ctrl + X開頭的最後一行
      然後,編譯內核,安裝模塊,安裝內核,如果需要,請生成initramfs,如果使用Splash,則將初始代碼添加到initramfs中,重新生成grub的條目,最後並且非常重要的是,您必須重建以下模塊並非來自內核或專有的nvidia模塊,否則將無法使用圖形模式。

      #e選擇內核列表
      #eselect內核設置x
      #cd / usr / src / linux
      #make
      #make modules_install
      #掛載/啟動
      #make install
      #dracut –hostonly»3.15.7-gentoo –force
      #splash_geninitramfs –詳細–res 1400×1050 –追加/boot/initramfs-3.15.7-gentoo.img出現世界
      #grub-mkconfig -o /boot/grub/grub.cfg
      #出現@模塊重建
      #卸載​​/啟動
      #shutdown -r now

      如果您使用genkernel,則只需修補該文件,我了解genkernel會自行修復。
      此外,您必須從內核中刪除drm支持和nvidia驅動程序以及其他視頻芯片,以免它們與作為nvidia模塊安裝的封閉nvidia驅動程序正面衝突。
      在使用bootsplash的情況下,必須在內核中包含uvesa驅動程序,以便它支持高屏幕分辨率,因為封閉的nvidia驅動程序(如果我沒記錯的話)在以下設備的終端tty800«F600»中不支持超過1×1的分辨率靴子。
      我對其他發行版一無所知,但我想如果完成了這些步驟,它就可以在任何發行版上運行,並且可以將出現的更改保存下來。

      對於nvidia和uvesa,這些是必須遵循的準則:
      http://wiki.gentoo.org/wiki/NVidia/nvidia-drivers/es
      http://wiki.gentoo.org/wiki/Uvesafb

      1.    友喜 他說:

        感謝您提供的信息,但我通過更改為專有解決了該問題。 我記得以前的nVidia驅動程序(304.121)在轉至3.13時也必須打補丁,因為它在模塊的編譯中存在問題(沒有錯誤,但是模塊拒絕工作),並且一切都歸因於ACPI事件處理程序。 在Debian中,我遇到了問題並找到了解決方案。

        https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=740097

    2.    達拉 他說:

      我以曼賈羅(Manjaro)為例,但之前我曾提到過Arch和其他衍生產品也發生了同樣的事情。 因此,我認為問題不僅僅是那些受影響的人。

      附言:我無法直接回復相關消息,因為我看不到回複選項...

  8.   達拉 他說:

    我恰好是從Manjaro轉到Linux Mint,因為它在更新到0.8.9之後的版本(在我記不清哪個版本)後啟動時會凍結。 據我了解,這通常發生在筆記本電腦上。 我的問題與本文中的問題不同,我認為我得出的結論是,這可能與能源管理有關。 有些人在拔下電源後啟動筆記本電腦時不會凍結。 現在,我不記得這是否使我能夠始終沒有任何問題地開始,但是我當然能夠以花費更長的時間做更多次。
    無論如何,最後我放棄了,轉而使用Fedora和Linux Mint。

    1.    c4爆炸性 他說:

      碰巧的是,昨天我試圖在沒有充電器的情況下將其掛起,並且在恢復其掛起狀態後不得不重新啟動。

  9.   阿毛裡 他說:

    這很有趣,我在Arch呆了幾個月,而且還沒有一個內核恐慌! 實時環境中的Antergos(帶有添加的存儲庫的Arch)在我身上發生了,但我認為這更容易理解。 主板有問題或RAM模塊有問題嗎? 我記得大約2年前,一個RAM模塊使我在Windows中出現了多個藍屏,並導致了多個內核崩潰! 在曼德里瓦(Mandriva)上。 在重新引導和重新引導之間,我必須一次測試每個內存。

    1.    達拉 他說:

      這是一個Arch問題(拖累了所有派生問題),因為在其他發行版中沒有這種問題。 我感到尷尬的是,他們目前還沒有解決。 只是他們好幾年了! 我從2011年開始就讀過類似的問題。我很清楚,這是隨著更新而來的,因為使用0.8.7、0.8.8和0.8.9版本而不更新它們,則什麼也沒有發生。 從那時起,一切都變得糟透了,當然在舊版本中也發生了。 為什麼只有我們幾個人會發生這種情況? 我不知道,但是我不認為這是我們的問題,但是Arch的問題在於,因為正如已經說過的,其他發行版可以完美地工作。 在他的日子裡,我已經不知所措了,找到解決方案,但是我很累。 因此,很抱歉,我不會使用Arch。

      1.    友喜 他說:

        拱0.8.7、0.8.8和0.8.9? 我發現Arch使用該版本命名法。

        可能是您正在使用Manjaro嗎?

      2.    友喜 他說:

        好的,我通過閱讀您之前的評論來回答自己,一件事是Manjaro,另一件事是Arch。

        為某個問題歸咎於發行版也不是一致的(不是很一致),至少就我而言,我不能歸咎於nouveau和我的nVidia 6150SE卡為該問題嘗試了多少發行版,因為問題是MMIO處理驅動程序和卡(nVidia會知道要修復什麼,以及他們必須修復這些細節的瘋狂事情)。 硬件也可能是問題所在,您可以看到在所使用的任何操作系統(Windows,Linux,BSD)中,以及在修理計算機的經驗中,我都遇到了非常奇怪的硬件問題(例如,除非您進行更改,否則計算機會拒絕啟動)內存位置,並且在關閉時必須重複該過程),我不能為此怪罪於Windows和Debian。

  10.   拉索7 他說:

    我在現場Ubuntu 12.04上出現了內核恐慌

  11.   烏利塞斯·伯納爾·佩雷斯 他說:

    我對我的Secure HP Pavilion dm4筆記本電腦,8 GB RAM和500個硬盤驅動器非常狂熱,它已經使用了5年以上。 我不記得微處理器的速度,一個Intel Core i5,我認為超過2 MHz。
    我無法在終端屏幕上寫任何東西。 我將繼續尋找更多信息,以解決此問題。