我有兩個監視器,用於在每個監視器上運行兩個不同的應用程式。例如。
- 監視器 A 應該運行 chromium-browser
- 監視器 B 應該運行另一個 chromium 瀏覽器
這應該在系統啟動後運行。
下面是 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
問題是,我可以讓一台顯示器使用此設定。這意味著以下內容:
在 chromium 瀏覽器中播放 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 伺服器並為每個監視器顯示,這不是您想要做的。
您想要啟動一台具有 1 個顯示器 ( :0
) 和兩個監視器 (:0.0
和:0.1
) 的 X 伺服器。
您應該startx
調用一次 start up :0
,並且腳本應該啟動兩個應用程序,並使用參數將其中一個移動到第二個螢幕--window-position
。
如果您的顯示器是並排的,而第一個顯示器的解析度為 1920x1080,左上角為 0,0,那麼第二個顯示器的左上角將為 1920,0。
答案2
達斯說的話。另外,在我們的中,xorg.conf
您引用了monitor0
(for screen0
) 和monitor1
(for screen1
),但您只monitor
定義了一個部分,即monitor0
.
我的猜測是,「找不到螢幕」錯誤是因為 X 正在嘗試查找,monitor1
但該畫面不存在。