У меня есть ноутбук (~ 5 лет HP Compaq nc6400 под управлением Fedora Linux), который я использую большую часть времени в качестве настольного компьютера. Он подключен к док-станции с закрытой крышкой и подключен через нее с помощью кабеля DVI к большому внешнему ЖК-дисплею.
По разным причинам (приветствие при входе в систему появляется на закрытом дисплее, ограниченная видеокарта не может выполнять 3D на обоих дисплеях одновременно) Я бы хотел, чтобы X вообще не использовала встроенную панель дисплея ноутбука. Когда я пристыкован к столу (как я использую его примерно в 97% случаев), я бы хотел, чтобы он просто не использовал встроенную панель ноутбука. Загрузка не является особой проблемой, так как по умолчанию все отражается между двумя дисплеями. Кроме того, я не против «ручного» решения, так что мне приходится отменять настройки в тех редких случаях, когда я использую ноутбук вдали от своего стола.
После входа в систему я могу настроить Gnome таким образом, чтобы он использовал только внешний монитор, а панель ноутбука помечена как «выключенная», однако это не влияет на исходное автоматически настроенное состояние X и отображение приветствия перед входом в систему. Удивительно, но ноутбук не имеет датчика крышки, поэтому открытие или закрытие крышки не вызывает каких-либо событий. Я могу использовать xrandr -display :0 --output LVDS1 --off --output DVI1 --auto
отдельный VC до входа в систему, но это все еще после того, как X запустил и обнаружил и решил использовать оба дисплея.
Я попытался настроить Xorg, создав файл, /etc/X11/xorg.conf.d/01-turn-off-laptop-display.conf
который содержит:
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
На этой машине использовались различные версии Fedora Linux (x86_64) начиная с версии 10/11). В настоящее время я пробую Fedora 15 beta (которая включает в себя Gnome 3), но проблема существовала в предыдущих выпусках ОС.
Ответы:
Я смог достичь желаемой цели с помощью следующего xorg.conf:
критическим элементом является
Option "Ignore" "true"
. Я мог бы упростить это дальше, но это работает. Я пока не знаю, что произойдет, если / если я использую ноутбук вдали от внешнего дисплея, возможно, X выйдет с ошибкой - не идеальное решение, но я могу переместить конфигурацию в этом случае.источник
Я бы предложил немного другой подход, который может быть более гибким для тех редких случаев, когда вы хотите использовать ноутбук в качестве ноутбука.
В зависимости от вашего диспетчера отображения (возможно, GDM, KDM или LightDM) вы можете запустить скрипт при запуске диспетчера отображения. Вам вообще не понадобится измененный файл xorg.conf. расположение сценария выглядит следующим образом (1):
Сценарий может быть примерно таким. Вам нужно будет заменить имена мониторов на те, которые соответствуют вашей машине. Я пытался угадать на основе вашего xorg.conf выше.
Это проверит, подключен ли ваш монитор DVI, и включен ли он вместо встроенного дисплея. У меня есть намного более сложная версия этого, которая позволяет моему ноутбуку хорошо работать, но все же подходит для использования в других местах. Для меня это сложнее, потому что я использую 5 экранов на работе.
(1) некоторая информация о расположении файла с http://forum.xfce.org/viewtopic.php?pid=25026#p25026
источник
слегка измененная версия предыдущего поста xorg.conf
Кажется, работает для чипа Intel NM10. Коробка имеет VGA для «большой дисплей»
источник
Если вы используете
Option "ignore" "true"
в/etc/X11/xorg.conf
то вы не сможете использовать этот выход сxrandr
(или в зависимости инструменты) на всех. Используя эту конфигурацию, я просто отключил свой выход HDMI:Обратите внимание, что каждая отдельная строка конфигурации необходима для включения DVI-D (в полном разрешении) и для отключения HDMI.
Чтобы найти свои результаты, запустите
xrandr -q
и адаптируйтеOption "Monitor-...
соответственно. Соответствующие разделы справочной страницы:источник