Boot

安裝新的 RX 580 顯卡影片 Linux 驅動程序時 Manjaro GRUB 啟動損壞

  • April 17, 2019

我在 Manjaro Gnome 中遇到了一個我希望解決的錯誤。

PC系統和驅動配置:

舊版 BIOS 系統。華碩 Maximus IV Extreme-Z。該主機板理論上支持 UEFI BIOS 啟動,但在選項中啟動 EFI 兼容 ROM 會使系統無法啟動到 BIOS,只留下黑屏。這與目前的錯誤無關。

藍寶石 RX 580 Nitro+。此卡具有混合 BIOS,能夠使用舊版和 UEFI BIOS 進行引導。它的預設模式是傳統的。(許多使用者在論壇上報告了藍寶石 480 型號中遺留 BIOS 的問題)。

sda SSD
   sda1 MS Windows Reserved
   sda2 Windows 10
   sda3 extended Manjaro
       sda5 /boot
       sda6 /
       sda7 /var
sdb SATA HDD
   sdb1 Windows data partition (sometimes appears boot in gparted options)
   sdb2 Manjaro Swap partition
sdc SATA HDD
   sdc1 extended Manjaro
       sdc5 /home
   sdc3 Windows data partition

錯誤解釋:

安裝新顯卡後,GRUB 啟動就好了。我進入 Manjaro“硬體管理器”並按下“自動安裝開源驅動程序”。

這將安裝“ video-linux ”驅動程序,其中包括Manjaro 發行版中的AMD 開源驅動程序。

在那之後,我重新啟動了 Manjaro,這以某種方式破壞了啟動,甚至在我進入 BIOS 配置時,在 BIOS 中產生了這個圖像的影片解析度混亂:

解析度 BIOS 螢幕損壞

安裝備用顯卡似乎可以解決問題,並且 BIOS 中的圖像顯示在備用卡和重新插入 RX 580 後恢復正常。

之後,我在 Manjaro 成功啟動的幾次中解除安裝了*“video-linux”驅動程序,但它並沒有解決問題。*

損壞的引導包括幾個問題:

  1. SSD sda 有時會被 BIOS 檢測到。許多其他時候它隨機沒有被檢測到。我用“ sudo smartctl -a /dev/sda ”檢查了SSD的健康狀況,它報告了一個健康狀態,最低分數為96,分數為0/100。
  2. 嘗試按照本指南恢復 GRUB只成功了幾次。SSD 似乎會隨著每次啟動而降級。應用修復後的第一次啟動工作正常,但在下次啟動時,此錯誤返回並且啟動再次損壞,直到最終無法啟動。使用 fsck 檢查 sda5 /boot 分區,它報告一切正常,與其他 sda 分區一樣。
  3. grub-install –recheck 在 /dev/sda 和 sdc 上沒有報告錯誤。在 sdb 上,在扇區 32 報告了一個 FlexNet我按照本指南應用了修復程序
  4. 我用 sudo dd備份並刪除了 sda 和 sdb 的前 63 個扇區,並在 sda 上執行了 grub-install 和 grub-update。為了以防萬一,還對 sdb 和 sdc 進行了 grub-install –recheck。
  5. 這些指南中的說明不起作用,並且引導以多種方式損壞:

**a.-**如前所述,BIOS 隨機檢測到 SSD。

**b.-**如果我將 SSD 設置為預設啟動驅動器,它將進入 GRUB 救援模式。

**c.-**如果我使用 BIOS 的引導覆蓋選項引導 SSD,它會很好地進入 Manjaro GRUB。

**d.-**選擇 Manjaro 或 Windows 10 啟動會報告系統正嘗試在物理驅動器之外讀取/寫入的啟動錯誤,此日誌報告僅啟動 Manjaro:

讀/寫外部驅動器錯誤日誌

與此情況相關的日誌和資訊:

我認為這可能與此卡的混合 BIOS 選項有關。在此錯誤之前,我無法在 UEFI 模式下啟動我的 Manjaro liveUSB(似乎是與我的 ASUS Mobo 相關的 EFI 兼容性問題

在此錯誤之後,liveUSB 在 BIOS 發布後預設為成功的 UEFI 引導

同樣在啟動時,liveUSB 報告了許多 SSD 的讀/寫錯誤,並且需要很長時間才能啟動Manjaro XFCE。

在那次啟動之後,下一個報告的錯誤要少得多,並且啟動時間要短得多。這是liveUSB 的 journalctl -b 日誌的pastebin 連結。(這是我可以包含的唯一日誌,因為我無法啟動到我的基本 Manjaro 系統)

pastebin 日誌中的此錯誤:

nov 25 19:40:37 manjaro kernel: ACPI Error: [DSSP] Namespace lookup failure, AE_NOT_FOUND (20170728/psargs-364)
nov 25 19:40:37 manjaro kernel: ACPI Error: Method parse/execution failed \_SB.PCI0.SAT0.SPT1._GTF, AE_NOT_FOUND (20170728/psparse-550)

自從我安裝了 Manjaro 後出現(因此與目前的錯誤無關)並且可以通過添加以下內容輕鬆解決:

sudo nano /etc/default/grub
GRUB_CMDLINE_LINUX_DEFAULT="libata.noacpi=1"
sudo update-grub

正如 Michael Prokopec 建議將 SSD 插入另一個系統並清潔觸點解決了問題。

在啟動時,另一個系統在 SSD 上執行了 e2fsck,報告它也很健康。之後我嘗試重現該錯誤,似乎它現在正在工作。

它可能是有缺陷的主機板(我懷疑是插座引腳問題)或邁克爾提到的 SATA 觸點。這是因為在受影響的系統中引導 Manjaro liveUSB 成功嘗試在引導時執行 e2fsck。只有在另一個帶有 Manjaro 系統的主機板上啟動才能修復它

注意:損壞的 BIOS 螢幕是由雙顯示器/電視設置引起的。只要我在沒有電視插入 HDMI 埠的情況下打開 PC,BIOS 螢幕就會恢復正常。

引用自:https://unix.stackexchange.com/questions/484084