How do I setup headless system (system without monitor attached) in Dual Head mode?
Issue
The following information has been provided by Red Hat, but is outside the scope of the posted Service Level Agreements and support procedures. The information is provided as-is and any configuration settings or installed applications made from the information in this article could make the Operating System unsupported by Red Hat Global Support Services. The intent of this article is to provide information to accomplish the system's needs. Use of the information in this article at the user's own risk.
Issue
-
On my system with Nvidia graphics card, I need to configure dual head setup without any physical monitors attached to the system
-
I need to boot this system with DualHead setup in GUI mode and access its desktop remotely
- Is there any way I can configure Dual Head setup and start GUI on physical system without monitor attached to it?
- I referred DOC-54938 which guides to use Xvfb for head less setup, but this does not help for dual head mode
Environment
- Red Hat Enterprise Linux 4
- Red Hat Enterprise Linux 5
- gdm
- Nvidia proprietary driver
Resolution
-
Use Xorg server with TwinView setup configured using nvidia driver
-
Use the display configuration utility provided by hardware vendor (nvidia-settings) for this
- Use custom EDID information about the monitor to start the X server when monitor is not attached to the system
- Capture the EDID information for the monitors to be used and provide that information to Xorg server through xorg.conf file
- There is no need to attach actual monitor to the system, Xorg will get the EDID information from file and assume that monitor is attached to the system.
How do I use EDID information in my Xorg.conf file?
- Use ConnectedMonitor and CustomEDID options for this. Refer documentation for nvidia's X Config Options
How to get the EDID information for the monitor I wish to use?
- Attach monitors in question to any RHEL system
-
Boot the system in runlevel 3
-
Increase the log verbose for Xorg and get EDID information from Xorg logs
X -logverbose 7
- After running above command, there should be a black screen with movable mouse pointer as "x" on the screen
- Hit Ctrl+Alt+Backspace to kill X server
- Check /var/log/Xorg.0.log file and look for EDID in it.
- Copy raw EDID data in one file
I do not have access to any RHEL box, Is there any way to get the EDID information for the monitor I wish to use?
- Attach monitors in question to any other system to capture EDID information from it
-
Many third party software are available for this purpose.
-
Attach the monitor in question to any system, Install/run one of these software on it and capture EDID information in file.
-
There should be many software available on internet for Windows OS to capture monitor's EDID information.
-
In case you have any other Linux distribution see if increasing logverbose works with it or look for read-edid utility for Linux OS
How do I figure out the connections to be used with ConnectedMonitor and CustomEDID options in xorg configuration file?
* Refer Xorg logs after attaching monitors to the system.
-
Do this on the same system on which configuration is to be done.
-
In case it is not possible to attach monitor, refer display card's manual or contact hardware vendor for details
Example:
- Device section of xorg.conf file should look something like below:
Section "Device"
Identifier "Device0"
Driver "nvidia"
VendorName "NVIDIA Corporation"
BoardName "GeForce 7300 SE/7200 GS"
BusID "PCI:9:0:0"
Option "ConnectedMonitor" "CRT-0,DFP-0"
Option "CustomEDID" "CRT-0:/etc/X11/edid1.conf; DFP-0:/etc/X11/edid2.conf"
EndSection
- Rest of the file should be same as for normal configuration when monitors are attached.
- EDID info file should be seen something like below:
cat /etc/X11/edid1.conf
00 ff ff ff ff ff ff 00 10 ac 10 d0 55 4a 50 30
1a 12 01 03 68 2b 1b 78 ee 8d b0 a2 54 4a 9c 25
11 50 54 a5 4b 00 71 4f 81 80 01 01 01 01 01 01
01 01 01 01 01 01 21 39 90 30 62 1a 27 40 68 b0
36 00 ae 0e 11 00 00 1c 00 00 00 ff 00 47 32 36
37 48 38 36 50 30 50 4a 55 0a 00 00 00 fd 00 38
4b 1e 53 0f 00 0a 20 20 20 20 20 20 00 00 00 fc
00 44 45 4c 4c 20 45 32 30 37 57 46 50 0a 00 33cat /etc/X11/edid2.conf
00 ff ff ff ff ff ff 00 10 ac 4e 40 49 35 31 30
0e 14 01 03 80 2f 1e 78 ee ee 95 a3 54 4c 99 26
0f 50 54 a5 4b 00 71 4f 81 80 b3 00 01 01 01 01
01 01 01 01 01 01 7c 2e 90 a0 60 1a 1e 40 30 20
36 00 da 28 11 00 00 1a 00 00 00 ff 00 52 38 38
30 4b 30 34 32 30 31 35 49 0a 00 00 00 fc 00 44
45 4c 4c 20 50 32 32 31 30 0a 20 20 00 00 00 fd
00 38 4b 1e 53 10 00 0a 20 20 20 20 20 20 00 57
Note:
The values in above example need to be configured as per the setup requirement using procedure mentioned above
Subscriber exclusive content
A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.