Linux

如何防止 Xorg 使用我的 Linux 筆記型電腦的顯示面板?

  • February 6, 2017

我有一台筆記型電腦(執行 Fedora Linux 的約 5 年曆史的 HP compaq nc6400),我大部分時間都將其用作台式機。它在蓋子關閉的情況下插入擴展塢,並通過 DVI 電纜連接到大型外部 LCD 顯示器。

由於各種原因(登錄歡迎出現在關閉的顯示器上,有限的顯卡不能同時對兩個顯示器進行 3D)我想完全阻止 X 使用筆記型電腦的集成顯示面板。當停靠在我的桌子上時(這是我大約 97% 的時間使用它的方式),我希望它根本不使用集成的筆記型電腦面板。引導不是一個特別的問題,因為預設情況下,所有內容都在兩個顯示器之間鏡像。此外,我不介意“手動”解決方案,這樣當我在遠離辦公桌的地方使用筆記型電腦時,我必須在極少數情況下撤消設置。

登錄後,我可以配置 Gnome,使其僅使用外接顯示器,並且筆記型電腦面板被標記為“關閉”,但這對 X 的初始自動配置狀態和登錄前歡迎程序顯示沒有影響。令人驚訝的是,筆記型電腦似乎沒有蓋子感測器,因此打開或關閉蓋子似乎不會觸發任何事件。我可以xrandr -display :0 --output LVDS1 --off --output DVI1 --auto在登錄之前在單獨的 VC 上使用,但這仍然是在 X 啟動並發現並決定使用兩個顯示器之後。

我嘗試通過創建一個/etc/X11/xorg.conf.d/01-turn-off-laptop-display.conf包含以下內容的文件來配置 Xorg:

Section "Monitor"
   Identifier  "laptop panel"
   Option  "Monitor-LVDS1" "laptop panel"
   Option  "Enable" "no"
EndSection
Section "Monitor"
   Identifier  "big display"
   Option  "Monitor-DVI1" "big display"
EndSection

Section "Screen"
   Identifier  "main"
   Device  "Default"
   Monitor "big display"
EndSection

然而,這並沒有產生有用的效果。顯卡為 Intel 945GM:

[dan@khorium ~]$ sudo lspci -v -s 0:2
00:02.0 VGA compatible controller: Intel Corporation Mobile 945GM/GMS, 943/940GML Express Integrated Graphics Controller (rev 03) (prog-if 00 [VGA controller])
   Subsystem: Hewlett-Packard Company Device 30ad
   Flags: bus master, fast devsel, latency 0, IRQ 16
   Memory at f4600000 (32-bit, non-prefetchable) [size=512K]
   I/O ports at 4000 [size=8]
   Memory at e0000000 (32-bit, prefetchable) [size=256M]
   Memory at f4680000 (32-bit, non-prefetchable) [size=256K]
   Expansion ROM at <unassigned> [disabled]
   Capabilities: [90] MSI: Enable- Count=1/1 Maskable- 64bit-
   Capabilities: [d0] Power Management version 2
   Kernel driver in use: i915
   Kernel modules: i915

00:02.1 Display controller: Intel Corporation Mobile 945GM/GMS/GME, 943/940GML Express Integrated Graphics Controller (rev 03)
   Subsystem: Hewlett-Packard Company Device 30ad
   Flags: bus master, fast devsel, latency 0
   Memory at f4700000 (32-bit, non-prefetchable) [size=512K]
   Capabilities: [d0] Power Management version 2

從大約 10/11 版開始,該機器一直在執行各種版本的 Fedora Linux (x86_64)。我目前正在嘗試 Fedora 15 測試版(包括 Gnome 3),但該問題在以前的作業系統版本中已經存在。

我能夠通過以下 xorg.conf 實現預期目標:

Section "Monitor"
       Identifier      "laptop panel"
       Option  "ignore"        "true"
EndSection
Section "Monitor"
       Identifier      "big display"
EndSection    
Section "Device"
       Identifier      "onboard"
       Option  "Monitor-LVDS1" "laptop panel"
       Option  "Monitor-DVI1" "big display"
EndSection

關鍵要素是Option "Ignore" "true"。我也許可以進一步簡化這一點,但它確實有效。我還不知道當/如果我將筆記型電腦遠離外部顯示器使用時會發生什麼,X 可能會退出並出現錯誤——這不是一個完美的解決方案,但我可以在這種情況下將配置移開。

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