Xorg Server + Nvidia Graphic Card 환경에서 Dual Head 설정
이글은 http://gaedol.org/resources/wiki 내에 있던 글을 옮긴 것입니다.
Nvidia 그래픽 카드를 사용하여 Dual Head를 구성하는 방법에는 TwinView를 이용하는 방법과 Xinerama를 이용하는 방법이 있다. TwinView는 하나의 CPU(그래픽 코어)를 이용하는 그래픽 카드를 이용해 여러 모니터를 지원하게 하기 위해 개발된 방법이다. 이와는 달리 Xinerama는 DEC에에서 PanoramiX라는 이름으로 개발되어 X window 시스템에 통합되었다. TwinView가 Nvidia 칩셋을 사용하는 그래픽 카드에서만 사용되는 것에 반해 Xinerama는 일반적으로 사용되는 거의 모든 그래픽카드를 지원한다. 여기서는 Xinerama를 이용하여 Dual Head를 구성하는 방법에 대하여 설명할 것이다.
1. Installing Nvidia Driver
먼저 자신의 우분투박스에 설치된 커널의 아키텍쳐를 알아낸 후 최신 kernel image, headers와 restricted modules을 설치 한다.
$ uname -r
2.6.17-11-generic
$ sudo apt-get install linux-generic
Nvidia Driver를 설치 한다.
sudo apt-get install nvidia-glx
xorg.conf 파일을 백업한 후 Nvidia Driver를 활성화 시킨다.
$ sudo cp /etc/X11/xorg.conf /etc/X11/xorg.conf_backup
$ sudo nvidia-xconfig
X server를 재시작하여 Nvidia드라이버를 적용시킨다.(Ctrl + Alt + Backspace키를 누르면 X server가 새로운 설정파일을 읽어 재시작된다.)
2. Configure Dual Head with Xinerama
드라이버 설치를 마쳤으면 Dual Head를 구성하여 보자. Xinerama를 이용하여 Dual Head를 구성하기 위해서는 /etc/X11/xorg.conf파일에 Screen, Monitor, Device Section을 하나씩 추가 해주면 된다. 다음과 같이 추가 한다.
Section "Monitor"
Identifier "Monitor[0]"
Option "DPMS"
EndSectionSection "Monitor"
Identifier "Monitor[1]"
Option "DPMS"
EndSectionSection "Device"
Identifier "Device[0]"
Driver "nvidia"
Screen 0
BusID "PCI:1:0:0"
EndSectionSection "Device"
Identifier "Device[1]"
Driver "nvidia"
Screen 1
BusID "PCI:1:0:0"
EndSectionSection "Screen"
Identifier "Screen[0]"
Device "Device[0]"
Monitor "Monitor[0]"
DefaultDepth 24
SubSection "Display"
Viewport 0 0
Depth 24
Modes "1280x1024"
EndSubSection
EndSectionSection "Screen"
Identifier "Screen[1]"
Device "Device[1]"
Monitor "Monitor[1]"
DefaultDepth 24
SubSection "Display"
Viewport 0 0
Depth 24
Modes "1280x1024"
EndSubSection
EndSection
다음 Layout Section을 다음과 같이 수정한다.
Section "ServerLayout"
Identifier "Default Layout"
Screen 0 "Screen[0]" 0 0
Screen 1 "Screen[1]" Rightof "Screen[0]
InputDevice "Generic Keyboard"
InputDevice "Configured Mouse"
InputDevice "stylus" "SendCoreEvents"
InputDevice "cursor" "SendCoreEvents"
InputDevice "eraser" "SendCoreEvents"
Option "Xinerama" "on"
EndSection
X server를 재시작한다.
3. 모니터 우선순위 설정
Section "Device"
Identifier "Device[0]"
Driver "nvidia"
Option "UseDisplayDevice" "DFP"
Screen 0
BusID "PCI:1:0:0"
EndSectionSection "Device"
Identifier "Device[1]"
Driver "nvidia"
Option "UseDisplayDevice" "CRT"
Screen 1
BusID "PCI:1:0:0"
EndSection

