각각 두 개의 서로 다른 응용 프로그램을 실행하는 데 사용되는 두 개의 모니터가 있습니다. 예.
- 모니터 A는 크롬 브라우저를 실행해야 합니다
- 모니터 B는 다른 크롬 브라우저를 실행해야 합니다
이는 시스템이 부팅된 후에 실행되어야 합니다.
아래 xorg.conf
Section "ServerFlags"
# Even if mouse detection fails, X will start
Option "AllowMouseOpenFail" "yes"
# VT switching is disabled
Option "DontVTSwitch" "yes"
# X restart (Ctrl+Alt+Backspace) is disabled
Option "DontZap" "yes"
EndSection
Section "InputDevice"
# generated from default
Identifier "Mouse0"
Driver "mouse"
Option "Protocol" "auto"
Option "Device" "/dev/psaux"
Option "Emulate3Buttons" "no"
Option "ZAxisMapping" "4 5"
EndSection
Section "InputDevice"
# generated from default
Identifier "Keyboard0"
Driver "kbd"
EndSection
Section "InputDevice"
# generated from default
Identifier "Mouse1"
Driver "mouse"
Option "Protocol" "auto"
Option "Device" "/dev/psaux"
Option "Emulate3Buttons" "no"
Option "ZAxisMapping" "4 5"
EndSection
Section "InputDevice"
# generated from default
Identifier "Keyboard1"
Driver "kbd"
EndSection
Section "Monitor"
# HorizSync source: edid, VertRefresh source: edid
Identifier "Monitor0"
VendorName "Unknown"
ModelName "DELL ST2220M"
HorizSync 30.0 - 83.0
VertRefresh 56.0 - 76.0
Option "DPMS"
EndSection
Section "Monitor"
# HorizSync source: edid, VertRefresh source: edid
Identifier "Monitor1"
VendorName "Unknown"
ModelName "Unknown"
HorizSync 30.0 - 82.0
VertRefresh 56.0 - 76.0
EndSection
Section "Device"
Identifier "Device0"
Driver "nvidia"
VendorName "NVIDIA Corporation"
BoardName "GeForce GT 630"
EndSection
Section "Screen"
Identifier "Screen0"
Device "Device0"
Monitor "Monitor0"
DefaultDepth 24
SubSection "Display"
Depth 24
Modes "1920x720"
EndSubSection
EndSection
Section "Screen"
Identifier "Screen1"
Device "Device0"
Monitor "Monitor1"
DefaultDepth 24
SubSection "Display"
Depth 24
Modes "1920x720"
EndSubSection
EndSection
Section "ServerLayout"
Identifier "Layout0"
Screen 0 "Screen0" 0 0
InputDevice "mouse0" "CorePointer"
InputDevice "keyboard0" "CoreKeyboard"
Option "Xinerama" "0"
EndSection
Section "ServerLayout"
Identifier "Layout1"
Screen 1 "Screen1" RightOf "Screen0"
InputDevice "mouse1"
InputDevice "keyboard1"
Option "Xinerama" "1"
EndSection
런레벨 2의 초기화 스크립트에는 다음이 있습니다.
startx /path/to/screen-0-app.sh -- :0 -layout Layout0 -config /path/to/displaylink.conf -nolisten tcp vt7 -novtswitch -sharevts &
startx /path/to/screen-1-app.sh -- :1 -layout Layout1 -config /path/to/displaylink.conf -nolisten tcp vt8 -novtswitch -sharevts &
displaylink.conf
xorg.conf와 동일:
screen-0-app.sh and screen-1-app.sh consist of
exec xterm -e xrandr -s 1920x1080 &
exec chromium-browser --user-data-dir=~/.chromium --window-size=1920,1080 --window-position=0,0 --kiosk --incognito http://www.youtube.com/watch?v=MRbI6LwLz94
another screen consist of different youtube link with same setup
문제는 하나의 모니터가 이 설정으로 작동할 수 있다는 것입니다. 이는 다음을 의미합니다.
크롬 브라우저에서 재생되는 Youtube 비디오 하나의 startx는 작동하지만 다른 모니터는 비어 있는 것 같고 오류는 다음과 같습니다.
(++) Using config file: "/home/atled/displaylink.conf"
(==) Using system config directory "/usr/share/X11/xorg.conf.d"
Fatal server error:
no screens found
Please consult the The X.Org Foundation support
at http://wiki.x.org
for help.
Please also check the log file at "/var/log/Xorg.0.log" for additional information.
ddxSigGiveUp: Closing log
xorg.0.log 파일 [40.255]
X.Org X Server 1.11.3
Release Date: 2011-12-16
[ 40.255] X Protocol Version 11, Revision 0
[ 40.255] Build Operating System: Linux 2.6.42-26-generic i686 Ubuntu
[ 40.255] Current Operating System: Linux atled-desktop 3.2.0-45-generic-pae #70-Ubuntu SMP Wed May 29 20:31:05 UTC 2013 i686
[ 40.255] Kernel command line: BOOT_IMAGE=/boot/vmlinuz-3.2.0-45-generic-pae root=UUID=8057523e-f126-4b9b-9534-b7c4cda86c8d ro acpi=off apm=off quiet splash vt.handoff=7
[ 40.255] Build Date: 04 August 2012 01:51:24AM
[ 40.255] xorg-server 2:1.11.4-0ubuntu10.7 (For technical support please see http://www.ubuntu.com/support)
[ 40.255] Current version of pixman: 0.24.4
[ 40.255] Before reporting problems, check http://wiki.x.org
to make sure that you have the latest version.
[ 40.255] Markers: (--) probed, (**) from config file, (==) default setting,
(++) from command line, (!!) notice, (II) informational,
(WW) warning, (EE) error, (NI) not implemented, (??) unknown.
[ 40.255] (==) Log file: "/var/log/Xorg.0.log", Time: Fri Jun 7 20:34:44 2013
[ 40.256] (++) Using config file: "/home/atled/displaylink.conf"
[ 40.256] (==) Using system config directory "/usr/share/X11/xorg.conf.d"
[ 40.265] (++) ServerLayout "Layout0"
[ 40.265] (**) |-->Screen "Screen0" (0)
[ 40.265] (**) | |-->Monitor "Monitor0"
[ 40.265] (**) | |-->Device "Device0"
[ 40.265] (**) |-->Input Device "Mouse0"
[ 40.265] (**) |-->Input Device "Keyboard0"
[ 40.265] (**) Option "DontVTSwitch" "yes"
[ 40.265] (**) Option "DontZap" "yes"
[ 40.265] (**) Option "AllowMouseOpenFail" "yes"
[ 40.265] (**) Option "Xinerama" "0"
[ 40.265] (==) Automatically adding devices
[ 40.265] (==) Automatically enabling devices
[ 40.265] (WW) The directory "/usr/share/fonts/X11/cyrillic" does not exist.
[ 40.265] Entry deleted from font path.
[ 40.265] (WW) The directory "/usr/share/fonts/X11/100dpi/" does not exist.
[ 40.265] Entry deleted from font path.
[ 40.265] (WW) The directory "/usr/share/fonts/X11/75dpi/" does not exist.
[ 40.265] Entry deleted from font path.
[ 40.265] (WW) The directory "/usr/share/fonts/X11/100dpi" does not exist.
[ 40.265] Entry deleted from font path.
[ 40.265] (WW) The directory "/usr/share/fonts/X11/75dpi" does not exist.
[ 40.265] Entry deleted from font path.
[ 40.265] (WW) The directory "/var/lib/defoma/x-ttcidfont-conf.d/dirs/TrueType" does not exist.
[ 40.265] Entry deleted from font path.
[ 40.265] (==) FontPath set to:
/usr/share/fonts/X11/misc,
built-ins
[ 40.265] (==) ModulePath set to "/usr/lib/i386-linux-gnu/xorg/extra-modules,/usr/lib/xorg/extra-modules,/usr/lib/xorg/modules"
[ 40.265] (WW) Hotplugging is on, devices using drivers 'kbd', 'mouse' or 'vmmouse' will be disabled.
[ 40.265] (WW) Disabling Mouse0
[ 40.265] (WW) Disabling Keyboard0
[ 40.265] (II) Loader magic: 0xb77195a0
[ 40.265] (II) Module ABI versions:
[ 40.265] X.Org ANSI C Emulation: 0.4
[ 40.265] X.Org Video Driver: 11.0
[ 40.265] X.Org XInput driver : 16.0
[ 40.265] X.Org Server Extension : 6.0
[ 40.266] (--) PCI:*(0:1:0:0) 10de:0f00:19da:1282 rev 161, Mem @ 0xfb000000/16777216, 0xd0000000/268435456, 0xce000000/33554432, I/O @ 0x0000ec00/128, BIOS @ 0x????????/524288
[ 40.266] (II) Open ACPI successful (/var/run/acpid.socket)
[ 40.266] (II) LoadModule: "extmod"
[ 40.267] (II) Loading /usr/lib/xorg/modules/extensions/libextmod.so
[ 40.267] (II) Module extmod: vendor="X.Org Foundation"
[ 40.267] compiled for 1.11.3, module version = 1.0.0
[ 40.267] Module class: X.Org Server Extension
[ 40.267] ABI class: X.Org Server Extension, version 6.0
[ 40.267] (II) Loading extension MIT-SCREEN-SAVER
[ 40.267] (II) Loading extension XFree86-VidModeExtension
[ 40.267] (II) Loading extension XFree86-DGA
[ 40.267] (II) Loading extension DPMS
[ 40.267] (II) Loading extension XVideo
[ 40.267] (II) Loading extension XVideo-MotionCompensation
[ 40.267] (II) Loading extension X-Resource
[ 40.267] (II) LoadModule: "dbe"
[ 40.267] (II) Loading /usr/lib/xorg/modules/extensions/libdbe.so
[ 40.267] (II) Module dbe: vendor="X.Org Foundation"
[ 40.267] compiled for 1.11.3, module version = 1.0.0
[ 40.267] Module class: X.Org Server Extension
[ 40.267] ABI class: X.Org Server Extension, version 6.0
[ 40.267] (II) Loading extension DOUBLE-BUFFER
[ 40.267] (II) LoadModule: "glx"
[ 40.267] (II) Loading /usr/lib/i386-linux-gnu/xorg/extra-modules/libglx.so
[ 40.286] (II) Module glx: vendor="NVIDIA Corporation"
[ 40.286] compiled for 4.0.2, module version = 1.0.0
[ 40.286] Module class: X.Org Server Extension
[ 40.286] (II) NVIDIA GLX Module 304.88 Wed Mar 27 14:51:59 PDT 2013
[ 40.286] (II) Loading extension GLX
[ 40.286] (II) LoadModule: "record"
[ 40.286] (II) Loading /usr/lib/xorg/modules/extensions/librecord.so
[ 40.286] (II) Module record: vendor="X.Org Foundation"
[ 40.286] compiled for 1.11.3, module version = 1.13.0
[ 40.286] (II) LoadModule: "dri"
[ 40.287] (II) Loading /usr/lib/xorg/modules/extensions/libdri.so
[ 40.287] (II) Module dri: vendor="X.Org Foundation"
[ 40.287] compiled for 1.11.3, module version = 1.0.0
[ 40.287] ABI class: X.Org Server Extension, version 6.0
[ 40.287] (II) Loading extension XFree86-DRI
[ 40.287] (II) LoadModule: "dri2"
[ 40.287] (II) Loading /usr/lib/xorg/modules/extensions/libdri2.so
[ 40.287] (II) Module dri2: vendor="X.Org Foundation"
[ 40.287] compiled for 1.11.3, module version = 1.2.0
[ 40.287] ABI class: X.Org Server Extension, version 6.0
[ 40.287] (II) Loading extension DRI2
[ 40.287] (II) LoadModule: "nvidia"
[ 40.287] (II) Loading /usr/lib/i386-linux-gnu/xorg/extra-modules/nvidia_drv.so
[ 40.287] (II) Module nvidia: vendor="NVIDIA Corporation"
[ 40.287] compiled for 4.0.2, module version = 1.0.0
[ 40.287] Module class: X.Org Video Driver
[ 40.288] (II) NVIDIA dlloader X Driver 304.88 Wed Mar 27 14:32:42 PDT 2013
[ 40.288] (II) NVIDIA Unified Driver for all Supported NVIDIA GPUs
[ 40.288] (++) using VT number 7
[ 40.288] (II) Loading sub module "fb"
[ 40.288] (II) LoadModule: "fb"
[ 40.288] (II) Loading /usr/lib/xorg/modules/libfb.so
[ 40.288] (II) Module fb: vendor="X.Org Foundation"
[ 40.288] compiled for 1.11.3, module version = 1.0.0
[ 40.288] ABI class: X.Org ANSI C Emulation, version 0.4
[ 40.288] (II) Loading sub module "wfb"
[ 40.288] (II) LoadModule: "wfb"
[ 40.288] (II) Loading /usr/lib/xorg/modules/libwfb.so
[ 40.288] (II) Module wfb: vendor="X.Org Foundation"
[ 40.288] compiled for 1.11.3, module version = 1.0.0
[ 40.288] ABI class: X.Org ANSI C Emulation, version 0.4
[ 40.288] (II) Loading sub module "ramdac"
[ 40.288] (II) LoadModule: "ramdac"
[ 40.288] (II) Module "ramdac" already built-in
[ 40.288] (II) Loading /usr/lib/i386-linux-gnu/xorg/extra-modules/nvidia_drv.so
[ 40.288] (II) Loading /usr/lib/xorg/modules/libwfb.so
[ 40.288] (II) Loading /usr/lib/xorg/modules/libfb.so
[ 40.288] (**) NVIDIA(0): Depth 24, (--) framebuffer bpp 32
[ 40.288] (==) NVIDIA(0): RGB weight 888
[ 40.288] (==) NVIDIA(0): Default visual is TrueColor
[ 40.288] (==) NVIDIA(0): Using gamma correction (1.0, 1.0, 1.0)
[ 40.288] (**) NVIDIA(0): Enabling 2D acceleration
[ 40.878] (II) NVIDIA(GPU-0): Display (DELL ST2220M (DFP-0)) does not support NVIDIA 3D
[ 40.878] (II) NVIDIA(GPU-0): Vision stereo.
[ 40.891] (II) NVIDIA(GPU-0): Display (Philips 224EL (DFP-1)) does not support NVIDIA 3D
[ 40.891] (II) NVIDIA(GPU-0): Vision stereo.
[ 40.894] (II) NVIDIA(0): NVIDIA GPU GeForce GT 630 (GF108) at PCI:1:0:0 (GPU-0)
[ 40.894] (--) NVIDIA(0): Memory: 1048576 kBytes
[ 40.894] (--) NVIDIA(0): VideoBIOS: 70.08.aa.00.00
[ 40.894] (II) NVIDIA(0): Detected PCI Express Link width: 16X
[ 40.894] (--) NVIDIA(0): Interlaced video modes are supported on this GPU
[ 40.895] (EE) NVIDIA(GPU-0): EVO Push buffer channel allocation failed
[ 40.895] (EE) *** Aborting ***
[ 40.895] (EE) NVIDIA(GPU-0): Failed to allocate EVO core DMA push buffer
[ 40.895] (EE) *** Aborting ***
[ 40.895] (EE) NVIDIA(0): Failing initialization of X screen 0
[ 40.896] (II) UnloadModule: "nvidia"
[ 40.896] (II) Unloading nvidia
[ 40.896] (II) UnloadModule: "wfb"
[ 40.896] (II) Unloading wfb
[ 40.897] (II) UnloadModule: "fb"
[ 40.897] (II) Unloading fb
[ 40.897] (EE) Screen(s) found, but none have a usable configuration.
[ 40.897]
Fatal server error:
[ 40.897] no screens found
[ 40.897]
Please consult the The X.Org Foundation support
at http://wiki.x.org
for help.
[ 40.897] Please also check the log file at "/var/log/Xorg.0.log" for additional information.
[ 40.897]
[ 40.897] ddxSigGiveUp: Closing log
[ 40.897] Server terminated with error (1). Closing log file.
답변1
디스플레이와 모니터는 같은 것이 아닙니다.
각 모니터에 대해 별도의 X 서버와 디스플레이를 시작하려고 하는데 이는 원하는 작업이 아닙니다.
:0
디스플레이 1개( )와 모니터 2개( :0.0
및 ) 가 있는 하나의 X-server를 시작하려고 합니다 :0.1
.
startx
시작하려면 한 번의 호출이 있어야 하며 :0
스크립트는 두 애플리케이션을 모두 실행하고 그 중 하나를 매개 --window-position
변수를 사용하여 두 번째 화면으로 이동해야 합니다.
모니터가 나란히 있고 첫 번째 모니터가 1920x1080이고 왼쪽 위 모서리가 0,0인 경우 두 번째 모니터의 왼쪽 위 모서리는 1920,0이 됩니다.
답변2
다스가 말한 것. 또한 우리에서는 (for )와 (for ) xorg.conf
를 모두 참조 하지만 정의된 섹션은 하나만 있고 그것은 입니다 .monitor0
screen0
monitor1
screen1
monitor
monitor0
내 생각엔 화면을 찾을 수 없음 오류는 X가 찾으려고 monitor1
하지만 존재하지 않기 때문에 발생하는 것 같습니다.