Debian

Debian 不遵守 GRUB2 解析度設置 – 螢幕上出現垃圾

  • February 19, 2020

我有沒有 GUI的Debian GNU/Linux 7 。

我的液晶顯示器原始解析度為 1280x1024。我希望我的作業系統預設使用此解析度tty1tty2

這些是我的行/etc/default/grub

GRUB_GFXMODE=1280x1024
GRUB_GFXPAYLOAD_LINUX=1280x1024

我已經執行了sudo update-grub,它沒有任何問題。重新啟動。這應該足夠了,但事實並非如此。

行為如下:

  • GRUB2 菜單始終使用配置的解析度。我已經檢查了不同的GRUB_GFXMODE它也可以使用較低的解析度,在這種情況下,圖片被拉伸並利用了整個螢幕——一切正常。
  • 系統啟動時,很少會按預期顯示初始消息,並且顯示器以其原始解析度工作。
  • 大約在消息Waiting for /dev to be fully populated...出現的那一刻,螢幕閃爍。一秒鐘後,圖像恢復為相同的解析度,但螢幕底部和右邊緣有垃圾(如靜態像素雜訊)。
  • 當我登錄並之後工作時,我無法使用兩條條紋(底部、右側)。

這就是它的外觀(請原諒照片解析度低,不過沒關係)。藍色mc視窗應該佔據整個螢幕。右上角可以看到圖形垃圾。底部的條紋全是黑色的,但那裡也經常有垃圾。

mc 視窗僅在螢幕的一部分上


儘管設置了 GRUB2,但我的作業系統沒有使用所需的解析度。這是的輸出fbset

mode "1024x768"
   geometry 1024 768 1280 1024 32
   timings 0 0 0 0 0 0 0
   accel true
   rgba 8/16,8/8,8/0,0/0
endmode

儘管如此,顯示器確實使用其原始解析度。請參閱這張照片的最後一行:

監視器報告正在使用的原始解析度

如何使 GRUB2 設置工作?


附加資訊:

  • 硬體為JBC362F36W-2600-B 準系統 Mini-ITX 系統
  • 它的主機板是NF36-N2600
  • 圖形集成到Intel Atom N2600 CPU。
  • 電纜是 DVI-D。
  • 顯示器是飛利浦 190B。它與 GRUB2 菜單配合得很好,所以我不認為它有什麼問題。

和更多:

# lspci | grep VGA
00:02.0 VGA compatible controller: Intel Corporation Atom Processor D2xxx/N2xxx Integrated Graphics Controller (rev 09)

# uname -a
Linux [censored] 3.2.0-4-amd64 #1 SMP Debian 3.2.81-1 x86_64 GNU/Linux

# grep -A 6 1280x1024-60 /etc/fb.modes 
mode "1280x1024-60"
   # D: 108.00 MHz, H: 63.981 kHz, V: 60.02 Hz
   geometry 1280 1024 1280 1024 8
   timings 9260 248 48 38 1 112 3
   hsync high
   vsync high
endmode

這些 GRUB 設置控制 GRUB 使用的顯示模式,它們不指定核心使用的預設幀緩衝區模式。要配置後者,可以使用video核心參數;在 Debian 中,將其添加到以下GRUB_CMDLINE_LINUX_DEFAULT/etc/default/grub

video=1280x1024

這應該會在核心初始化幀緩衝區後立即正確設置顯示。

video參數在fb/modedb.rst核心文件中有詳細記錄。

編輯:這是我的舊修復(我是 OP,以防有人沒有註意到)。已經有另一個更好的答案了。出於教育原因,我將留下我的答案。


舊修復:

我無法使 GRUB2 設置工作,但我仍然可以從正在執行的系統中將解析度更改為所需的 1280x1024。命令是:

fbset -g 1280 1024 1280 1024 32

添加這一行來/etc/rc.local解決我的問題。系統啟動時,我的螢幕部分仍然有垃圾;但是當我登錄並工作時,我可以使用顯示器的全解析度。

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