首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >启动第二个x会话会使前一个会话崩溃。

启动第二个x会话会使前一个会话崩溃。
EN

Unix & Linux用户
提问于 2020-04-22 09:44:24
回答 1查看 618关注 0票数 1

我正在遵循多台式机-一对一linux pc中的指导方针,开始另一个X会话。如果我切换到VT-3,我可以成功地启动一个新的X会话

代码语言:javascript
复制
startx gnome-session -- :1

代码语言:javascript
复制
startx -display :1 -- :1 vt3 &

但是,当我通过按Ctrl+Alt+F7切换回运行在VT-7上的X会话时,我发现X服务器已经崩溃,每次我回到第二个X服务器时,它都会崩溃。但是,如果我切换到VT-3并返回到VT-7而没有启动第二个x会话,我的原始x服务器就不会崩溃。如果我从tty3上的第二个xserver切换到另一个tty (比如tty2 ),然后返回到Ctrl-Alt-F7上的原始x服务器,那么xserver就不会崩溃。只有当我在VT-3中启动第二个X会话后从VT-3切换到VT-7时,才会发生崩溃。

查看Xorg.0.log,我发现了这些错误消息

代码语言:javascript
复制
[ 22162.112] (II) event2  - Power Button: device removed
[ 22162.136] (II) event4  - Video Bus: device removed
[ 22162.161] (II) event1  - Sleep Button: device removed
[ 22162.193] (II) event14 - Integrated Camera: Integrated C: device removed
[ 22162.233] (II) event3  - AT Translated Set 2 keyboard: device removed
[ 22162.249] (II) event5  - SynPS/2 Synaptics TouchPad: device removed
[ 22162.281] (II) event6  - ThinkPad Extra Buttons: device removed
[ 22162.313] (II) event15 - py-evdev-uinput: device removed
[ 22162.329] (II) event15 - py-evdev-uinput: device removed
[ 22162.361] (II) AIGLX: Suspending AIGLX clients for VT switch
[ 22175.090] (II) AIGLX: Resuming AIGLX clients after VT switch
[ 22175.091] (EE) modeset(0): drmSetMaster failed: Invalid argument
[ 22175.091] (EE) modeset(0): failed to set mode: Permission denied
[ 22175.091] (EE) 
Fatal server error:
[ 22175.091] (EE) EnterVT failed for screen 0
[ 22175.091] (EE) 
[ 22175.091] (EE) 
Please consult the The X.Org Foundation support 
     at http://wiki.x.org
 for help. 
[ 22175.091] (EE) Please also check the log file at "/var/log/Xorg.0.log" for additional information.
[ 22175.091] (EE) 
[ 22175.091] (II) AIGLX: Suspending AIGLX clients for VT switch
[ 22175.134] (EE) Server terminated with error (1). Closing log file.

我不知道坠机的原因是什么,也不知道如何解决它。查找这条错误信息,大多数人似乎谈论图形或nvidia驱动程序,但我没有改变驱动程序,因为我安装了我的发行版,我没有一个nvidia图形卡。在问题:切换到第二个X会话会杀死第一个中发布了一个类似的问题,但我不认为我有驱动程序问题,因为grep "nouveau" /var/log/syslog什么也不返回。

任何帮助都是非常感谢的。

EN

回答 1

Unix & Linux用户

发布于 2020-10-29 22:01:17

不幸的是,您所遵循的手册太旧了,没有反映现代显示管理器不需要支持startx启动的多个会话这一事实。例如,这就是LightDM的情况。使用LightDM运行新会话的支持方式是使用以下命令:

代码语言:javascript
复制
dm-tool switch-to-greeter

在此命令之后,VT-7上的前一个Xsession被锁定,并且在VT-8上打开一个新的Xsession,以便其他用户可以登录。通过使用CTRL-ALT-F7CTRL-ALT-F8在会话之间切换可以像往常一样工作(这种切换不会锁定之前的Xsession)。

我在您提到的问题切换到第二个X会话将杀死第一个中发布了一个答案,因为这个问题特别提到了LightDM。

另一个显示管理器有自己的方式(GDM可能使用gdmflexiserver),因此解决方案取决于您使用的显示管理器。

如果有必要运行另一个Xserver (除了已经运行的Xserver),您可以尝试遵循彻底的答案https://askubuntu.com/a/519164/981550 (来自问题https://askubuntu.com/questions/518454/what-does-startx-command-do),它建议使用Xnest (服务器内的图形服务器)。

票数 1
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/581717

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档