AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / unix / 问题 / 463550
Accepted
giusti
giusti
Asked: 2018-08-20 15:58:22 +0800 CST2018-08-20 15:58:22 +0800 CST 2018-08-20 15:58:22 +0800 CST

切换到第二个 X 会话会杀死第一个

  • 772

我在这里遇到了一个奇怪的问题。我有一个具有以下(汇总)配置的 Linux 机器:

  • 戴尔灵越 i5
  • 英伟达 GP108M
  • GNU/Linux Debian“测试”
  • xorg 服务器 2:1.20.0-3

根据我的说法,Xorg.0.log我正在运行的驱动程序是“nouveau”:

[ 30442.522] (II) LoadModule: "nouveau"  
<SNIP>
[ 30442.777] (--) NOUVEAU(G0): Chipset: "NVIDIA NV138"

我的迎宾员是 LightDM,我的 DM 是 Xfce。我尝试user2使用以下过程开始第二个会话:

  1. 切换到 VT-1 ( Ctrl+ Alt+ F1)
  2. 登录user2
  3. 跑startx -- :1

没有迎宾员。user2的 Xfce 会话正在运行。我可以验证两个会话都在运行htop。

但是,当我切换回 VT-7 ( Ctrl++ Alt)时F7,我看到user1的会话已终止。VT-7 回到迎宾员身边。


来自日志的信息

每当我在 VT 之间切换时,在syslog. 然而,这并不意味着任何 X 会话都已被终止。

例如,我user1在 VT-7 上开始我的 Xfce 会话。然后我切换到 VT-1 并返回到 VT-7。以下(汇总)错误在 上出现两次syslog:

kernel: ------------[ cut here ]------------
kernel: nouveau 0000:01:00.0: timeout
kernel: WARNING: CPU: 0 PID: 1783 at /build/linux-0buYvw/linux-4.17.8/drivers/gpu/drm/nouveau/nvkm/subdev/pmu/base.c:86 nvkm_pmu_reset+0x14c/0x160 [nouveau]
---[ cut 4 lines ]---
kernel: Hardware name: Dell Inc. Inspiron 7472/0WFX2M, BIOS 1.1.3 01/25/2018
kernel: RIP: 0010:nvkm_pmu_reset+0x14c/0x160 [nouveau]
---[ cut 9 lines ]---
kernel: Call Trace:
kernel:  nvkm_pmu_init+0x16/0x40 [nouveau]
kernel:  nvkm_subdev_init+0xb2/0x1f0 [nouveau]
kernel:  nvkm_device_init+0x132/0x270 [nouveau]
kernel:  nvkm_udevice_init+0x41/0x60 [nouveau]
kernel:  nvkm_object_init+0x3d/0x180 [nouveau]
kernel:  nvkm_object_init+0xa0/0x180 [nouveau]
kernel:  nvkm_object_init+0xa0/0x180 [nouveau]
kernel:  ? pci_restore_standard_config+0x40/0x40
kernel:  nouveau_do_resume+0x28/0x140 [nouveau]
kernel:  nouveau_pmops_runtime_resume+0x88/0x150 [nouveau]
kernel:  pci_pm_runtime_resume+0x78/0xb0
kernel:  __rpm_callback+0xc7/0x200
kernel:  ? pci_restore_standard_config+0x40/0x40
kernel:  rpm_callback+0x1f/0x70
kernel:  ? pci_restore_standard_config+0x40/0x40
kernel:  rpm_resume+0x4c4/0x790
kernel:  ? do_wp_page+0x154/0x500
kernel:  __pm_runtime_resume+0x47/0x70
kernel:  nouveau_drm_ioctl+0x35/0xc0 [nouveau]
kernel:  do_vfs_ioctl+0xa4/0x630
kernel:  ? handle_mm_fault+0xdc/0x210
kernel:  ksys_ioctl+0x70/0x80
kernel:  __x64_sys_ioctl+0x16/0x20
kernel:  do_syscall_64+0x55/0x110
kernel:  entry_SYSCALL_64_after_hwframe+0x44/0xa9
----[ cut 8 lines ]--- 
kernel: ---[ end trace 81b347516b37c927 ]---

现在我切换到 VT-1,登录user2并运行startx -- :0. 尽管如此,还没有会话被杀死,我可以用htop.

但是,如果我现在从 VT-1 上的 X 会话切换到 VT-7 上的另一个 X 会话,则会出现在syslog

pulseaudio[3372]: XIO:  fatal IO error 11 (Resource temporarily unavailable) on X server ":0.0"
pulseaudio[3372]:       after 17 requests (17 known processed) with 0 events remaining.
xfce4-notifyd[3565]: xfce4-notifyd: Fatal IO error 11 (Resource temporarily unavailable) on X server :0. 
at-spi-bus-launcher[1368]: XIO:  fatal IO error 11 (Resource temporarily unavailable) on X server ":0"
at-spi-bus-launcher[1368]:       after 443 requests (443 known processed) with 0 events remaining.
systemd[1308]: xfce4-notifyd.service: Main process exited, code=exited, status=1/FAILURE
systemd[1308]: xfce4-notifyd.service: Failed with result 'exit-code'.
systemd[1308]: pulseaudio.service: Main process exited, code=exited, status=1/FAILURE
systemd[1308]: pulseaudio.service: Failed with result 'exit-code'.
systemd[1308]: pulseaudio.service: Service RestartSec=100ms expired, scheduling restart.
systemd[1308]: pulseaudio.service: Scheduled restart job, restart counter is at 3.
systemd[1308]: Stopped Sound Service.
systemd[1308]: Starting Sound Service...
rtkit-daemon[1552]: Successfully made thread 3898 of process 3898 (n/a) owned by '1000' high priority at nice level -11.
rtkit-daemon[1552]: Supervising 4 threads of 2 processes of 2 users.
pulseaudio[3898]: W: [pulseaudio] pid.c: Stale PID file, overwriting.
avahi-daemon[644]: Withdrawing address record for ---[ IPv6 redacted ]--- on enp2s0.
lightdm[3907]: Error getting user list from org.freedesktop.Accounts: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name org.freedesktop.Accounts was not provided by any .service files

VT-7 回到迎宾员身边。X 服务器已重新启动 (?)。

关于Xorg.0.log,当我从 VT-1 切换到 VT-7 并且会话被终止时,会附加以下行。

[ 15945.806] (II) event7  - Power Button: device removed
[ 15945.832] (II) event10 - Video Bus: device removed
[ 15945.848] (II) event11 - Video Bus: device removed
[ 15945.877] (II) event5  - Power Button: device removed
[ 15945.908] (II) event6  - Sleep Button: device removed
[ 15945.933] (II) event1  - Microsoft Wired Keyboard 600: device removed
[ 15945.953] (II) event20 - PixArt Microsoft USB Optical Mouse: device removed
[ 15945.972] (II) event12 - Integrated Webcam: Integrated W: device removed
[ 15945.988] (II) event8  - DELL0828:00 06CB:7E7E Touchpad: device removed
[ 15946.021] (II) event3  - Intel HID events: device removed
[ 15946.044] (II) event9  - Dell WMI hotkeys: device removed
[ 15946.068] (II) event0  - AT Translated Set 2 keyboard: device removed
[ 15946.084] (II) event21 - PS/2 Generic Mouse: device removed
[ 15946.101] (II) event2  - Microsoft Wired Keyboard 600: device removed
[ 15946.116] (II) AIGLX: Suspending AIGLX clients for VT switch
[ 15946.117] (II) NOUVEAU(G0): NVLeaveVT is called.
xorg nouveau
  • 3 3 个回答
  • 1086 Views

3 个回答

  • Voted
  1. Best Answer
    dirkt
    2018-08-24T09:11:38+08:002018-08-24T09:11:38+08:00

    您在模块中遇到了内核崩溃nouveau,这将搞砸 DRM 模块,当它遇到坏状态时,这反过来又会搞砸连接到该模块的 X 服务器。

    升级到最新的内核和匹配的nouveau模块。如果您仍然遇到同样的崩溃,请向开发人员提交错误报告nouveau。确保包括完整的dmesg和Xorg.*.log。

    • 2
  2. Signy
    2020-10-30T13:30:10+08:002020-10-30T13:30:10+08:00

    问题在于 LightDM 不支持由startx. Startx是如何运行多个会话的旧方法,但某些现代系统不必支持。有一种支持的方式如何使用 LightDM 在另一个 VT 上登录另一个用户:用户只需要打开一个终端窗口并运行以下命令:

    dm-tool switch-to-greeter
    

    在此命令之后,VT-7 上的前一个 Xsession 被锁定,并在 VT-8 上打开一个新 Xsession,以便其他用户可以登录。使用 CTRL-ALT-F7 和 CTRL-ALT-F8 在会话之间切换照常工作(此切换不会锁定前一个 Xsession)。有关所有运行座位的信息提供此命令:

    dm-tool list-seats
    

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

    • 1
  3. Justin Sane
    2019-12-17T10:21:42+08:002019-12-17T10:21:42+08:00

    我对 Raspberry Pi 上的 Debian buster 有相同的行为,所以没有新风格。

    当我在 tty1-6 上使用 startx 时,在 tty7 中由 lightdm 启动的会话被终止并返回到欢迎程序。但是,我可以使用 startx 手动启动多个会话并在它们之间毫无问题地切换。

    (对不起,这不是一个真正的答案,但也许它算作一种解决方法)

    • 0

相关问题

  • 无法设置正确的显示分辨率

  • Arch Linux:在没有窗口管理器的情况下运行 VirtualBox (VM)

  • “错误:无法打开显示::0” - 以其他用户身份运行 GUI 应用程序

  • 如何在 Linux 中禁用硬件加速?

  • base 和 evdev xkb 规则有什么区别?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    如何将 GPG 私钥和公钥导出到文件

    • 4 个回答
  • Marko Smith

    ssh 无法协商:“找不到匹配的密码”,正在拒绝 cbc

    • 4 个回答
  • Marko Smith

    我们如何运行存储在变量中的命令?

    • 5 个回答
  • Marko Smith

    如何配置 systemd-resolved 和 systemd-networkd 以使用本地 DNS 服务器来解析本地域和远程 DNS 服务器来解析远程域?

    • 3 个回答
  • Marko Smith

    如何卸载内核模块“nvidia-drm”?

    • 13 个回答
  • Marko Smith

    dist-upgrade 后 Kali Linux 中的 apt-get update 错误 [重复]

    • 2 个回答
  • Marko Smith

    如何从 systemctl 服务日志中查看最新的 x 行

    • 5 个回答
  • Marko Smith

    Nano - 跳转到文件末尾

    • 8 个回答
  • Marko Smith

    grub 错误:你需要先加载内核

    • 4 个回答
  • Marko Smith

    如何下载软件包而不是使用 apt-get 命令安装它?

    • 7 个回答
  • Martin Hope
    rocky 如何将 GPG 私钥和公钥导出到文件 2018-11-16 05:36:15 +0800 CST
  • Martin Hope
    Wong Jia Hau ssh-add 返回:“连接代理时出错:没有这样的文件或目录” 2018-08-24 23:28:13 +0800 CST
  • Martin Hope
    Evan Carroll systemctl 状态显示:“状态:降级” 2018-06-03 18:48:17 +0800 CST
  • Martin Hope
    Tim 我们如何运行存储在变量中的命令? 2018-05-21 04:46:29 +0800 CST
  • Martin Hope
    Ankur S 为什么 /dev/null 是一个文件?为什么它的功能不作为一个简单的程序来实现? 2018-04-17 07:28:04 +0800 CST
  • Martin Hope
    user3191334 如何从 systemctl 服务日志中查看最新的 x 行 2018-02-07 00:14:16 +0800 CST
  • Martin Hope
    Marko Pacak Nano - 跳转到文件末尾 2018-02-01 01:53:03 +0800 CST
  • Martin Hope
    Kidburla 为什么真假这么大? 2018-01-26 12:14:47 +0800 CST
  • Martin Hope
    Christos Baziotis 在一个巨大的(70GB)、一行、文本文件中替换字符串 2017-12-30 06:58:33 +0800 CST
  • Martin Hope
    Bagas Sanjaya 为什么 Linux 使用 LF 作为换行符? 2017-12-20 05:48:21 +0800 CST

热门标签

linux bash debian shell-script text-processing ubuntu centos shell awk ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve