Ваша техника с DISPLAY= :2 работала на моем компьютере, и у меня одновременно работали два X-сервера. Мой Xserver 1.20.3, так что он все еще должен работать с вашей версией 1.19.6. У моего компьютера есть Intel iGPU. Кроме того, у меня нет Ubuntu, и я использую дистрибутив Linux без systemd, так что может быть по-другому.
Я просмотрел ваш журнал и заметил, что X-сервер отключился после раздела с клавиатурой. Я сравнил это с моим Xorg.2.log и подумал, нет ли путаницы с клавиатурой. Попробуйте добавить это в часть клавиатуры вашего файла xorg conf:
MatchProduct "Logitech HID compliant keyboard"
Это должно помешать X-серверу, например, изменить кнопки питания и кнопки сна. Сообщения о модели клавиатуры и раскладке в вашем файле журнала не отображались в моем файле журнала, например, в отношении кнопки питания и кнопки сна, и я вижу, где ваша клавиатура идентифицируется как клавиатура, указатель и мышь :
.[ 42.146] (II) event4 - Logitech HID compliant keyboard: is tagged by udev as: Keyboard Mouse Joystick
Возможно, раздел libinput «Игнорировать дубликаты» удаляет клавиатуру из-за мыши Keyboard/PixArt. Кроме того, я заметил, где у вас здесь было сообщение от systemd:
[ 42.153] (II) systemd-logind: returning pre-existing fd for /dev/input/event4 13:68
Это не ответ, а лишь некоторые подсказки.Xserver завершится без устройств ввода, и я думаю, что они удаляются из-за дубликатов.
РЕДАКТИРОВАТЬ :Вот мой файл /etc/X11/xorg.conf.d/50 -keyboard.conf:
Section "InputClass"
Identifier "ASUS laptop keyboard"
MatchIsKeyboard "on"
MatchProduct "AT Translated Set 2"
Option "XkbModel" "asus_laptop"
Option "XkbLayout" "us"
Option "XkbOptions" "caps:none,terminate:ctrl_alt_bksp"
EndSection
EDIT2 :Теперь я вижу, где дубликаты сенсорной панели игнорируются, так что, возможно, мышь отличается. Ваша MatchIsKeyboard по-прежнему соответствует кнопке питания и кнопке сна, так что это нехорошо. Надеюсь, вы разберетесь с проблемой. Остальная часть вашего журнала похожа на мою для DISPLAY= :2, за исключением клавиатуры.
EDIT3 :Содержит ли ваш Xorg.2.log эти записи?
[ 42.142] (II) XINPUT: Adding extended input device "Sleep Button" (type: KEYBOARD, id 8)
[ 42.142] (**) Option "xkb_model" "pc105"
[ 42.142] (**) Option "xkb_layout" "pl"
[ 42.143] (II) event1 - Sleep Button: is tagged by udev as: Keyboard
[ 42.143] (II) event1 - Sleep Button: device is a keyboard
Этого нет в моем файле Xorg.2.log. Драйвер клавиатуры libinput обрабатывает множество вещей, поэтому редактирование файлов в /usr/share/X11/xorg.conf.d может работать неправильно и будет заменено при обновлении пакетов.
Проверьте файл журнала и убедитесь, что клавиатура совпадает. Теперь я думаю, что MatchProduct - это просто строка sub -, поэтому просто «Logitech» может быть лучше, если «совместимая клавиатура» не соответствует.
EDIT4 :Файлы /usr/share/X11/xorg.conf.d/ являются системными файлами, и вам действительно следует поместить свои собственные файлы конфигурации в /etc/X11/xorg.conf.d и просто создать каталог, если он не существует.
Я не уверен, что это является причиной вашей проблемы с DISPLAY= :2, если нормальный startx работает. Я думаю, что ваш сервер Xorg настроен неправильно, и это становится проблемой только при одновременном запуске двух серверов. В противном случае я не вижу проблемы с вашей информацией Xorg.2.log.
РЕДАКТИРОВАТЬ5:
Теперь у меня есть 4 X-сервера с одинаковыми настройками, и я могу переключаться на них с помощью Ctrl -alt F7 F8 F9 или F10.У меня нет идей, за исключением того, что следующие настройки могут быть полезны для запуска разных настроек на каждом из них, и, возможно, экспериментирование с этими настройками может также заставить ваши несколько X-серверов работать:
use: X [:<display>] [option]
-a # default pointer acceleration (factor)
-ac disable access control restrictions
-audit int set audit trail level
-auth file select authorization file
-br create root window with black background
+bs enable any backing store support
-bs disable any backing store support
-c turns off key-click
c # key-click volume (0-100)
-cc int default color visual class
-nocursor disable the cursor
-core generate core dump on fatal error
-displayfd fd file descriptor to write display number to when ready to connect
-dpi int screen resolution in dots per inch
-dpms disables VESA DPMS monitor control
-deferglyphs [none|all|16] defer loading of [no|all|16-bit] glyphs
-f # bell base (0-100)
-fc string cursor font
-fn string default font name
-fp string default font path
-help prints message with these options
+iglx Allow creating indirect GLX contexts
-iglx Prohibit creating indirect GLX contexts (default)
-I ignore all remaining arguments
-ld int limit data space to N Kb
-lf int limit number of open files to N
-ls int limit stack space to N Kb
-nolock disable the locking mechanism
-maxclients n set maximum number of clients (power of two)
-nolisten string don't listen on protocol
-listen string listen on protocol
-noreset don't reset after last client exists
-background [none] create root window with no background
-reset reset after last client exists
-p # screen-saver pattern duration (minutes)
-pn accept failure to listen on all ports
-nopn reject failure to listen on all ports
-r turns off auto-repeat
r turns on auto-repeat
-render [default|mono|gray|color] set render color alloc policy
-retro start with classic stipple and cursor
-s # screen-saver timeout (minutes)
-seat string seat to run on
-t # default pointer threshold (pixels/t)
-terminate terminate at server reset
-to # connection time out
-tst disable testing extensions
ttyxx server started from init on /dev/ttyxx
v video blanking for screen-saver
-v screen-saver without video blanking
-wm WhenMapped default backing-store
-wr create root window with white background
-maxbigreqsize set maximal bigrequest size
+xinerama Enable XINERAMA extension
-xinerama Disable XINERAMA extension
-dumbSched Disable smart scheduling and threaded input, enable old behavior
-schedInterval int Set scheduler interval in msec
-sigstop Enable SIGSTOP based startup
+extension name Enable extension
-extension name Disable extension
-query host-name contact named host for XDMCP
-broadcast broadcast for XDMCP
-multicast [addr [hops]] IPv6 multicast for XDMCP
-indirect host-name contact named host for indirect XDMCP
-port port-num UDP port number to send messages to
-from local-address specify the local address to connect from
-once Terminate server after one session
-class display-class specify display class to send in manage
-cookie xdm-auth-bits specify the magic cookie for XDMCP
-displayID display-id manufacturer display ID for request [+-]accessx [ timeout [ timeout_mask [ feedback [ options_mask] ] ] ] enable/disable accessx key sequences
-ardelay set XKB autorepeat delay
-arinterval set XKB autorepeat interval
Device Dependent Usage
-config file specify a configuration file, relative to the xorg.conf search path, only root can use absolute
-configdir dir specify a configuration directory, relative to the xorg.conf.d search path, only root can use absolute
-verbose [n] verbose startup messages
-logverbose [n] verbose log messages
-quiet minimal startup messages
-fbbpp n set bpp for the framebuffer. Default: 8
-depth n set colour depth. Default: 8
-gamma f set gamma value (0.1 < f < 10.0) Default: 1.0
-rgamma f set gamma value for red phase
-ggamma f set gamma value for green phase
-bgamma f set gamma value for blue phase
-weight nnn set RGB weighting at 16 bpp. Default: 565
-layout name specify the ServerLayout section name
-screen name specify the Screen section name
-keyboard name specify the core keyboard InputDevice name
-pointer name specify the core pointer InputDevice name
-nosilk disable Silken Mouse
-flipPixels swap default black/white Pixel values
-disableVidMode disable mode adjustments with xvidtune
-allowNonLocalXvidtune allow xvidtune to be run as a non-local client
-allowMouseOpenFail start server even if the mouse can't be initialized
-ignoreABI make module ABI mismatches non-fatal
-isolateDevice bus_id restrict device resets to bus_id (PCI only)
-version show the server version
-showDefaultModulePath show the server default module path
-showDefaultLibPath show the server default library path
-novtswitch don't automatically switch VT at reset & exit
-sharevts share VTs with another X server
vtXX use the specified VT number
-keeptty don't detach controlling tty (for debugging only)
-masterfd <fd> use the specified fd as the DRM master fd (not if setuid/gid)
Наконец-то удалось решить эту проблему. Никаких изменений в файле /etc/sudoers.d/ не требуется.
Изменил приведенный выше код, как показано ниже, и все заработало.
installDpkgSig := "export DEBIAN_FRONTEND=noninteractive && /usr/bin/sudo apt install -o Dpkg::Options::=--force-confold -y dpkg-sig"
executor.cmd = *exec.Command("bash", "-c", installDpkgSig)
По завершении сеанса bash DEBIAN _FRONTEND будет установлено по умолчанию.