在远程主机上启动新的 (X11) 桌面会话

在远程主机上启动新的 (X11) 桌面会话

我想Xorg偏僻的主持人。起初,我认为这会像在本地主机上一样简单:

$ xinit /usr/bin/startxfce4 -- :4

上一个当地的主机,在(非图形)登录 shell (vt/tty) 中输入此命令将启动其他 Xorg服务器,即在此之后我将有一个 xfce4 桌面 - 这个桌面是额外的从桌面管理器登录开始到我的正常桌面(例如sddm)。

但是,如果我尝试这样做偏僻的(fedora) 系统从ssh控制台:

X.Org X Server 1.20.6
X Protocol Version 11, Revision 0
Build Operating System:  5.0.6-200.fc29.x86_64 
Current Operating System: Linux noah.siteos-lokal.de 5.5.10-200.fc31.x86_64 #1 SMP Wed Mar 18 14:21:38 UTC 2020 x86_64
Kernel command line: BOOT_IMAGE=(hd0,msdos3)/vmlinuz-5.5.10-200.fc31.x86_64 root=/dev/mapper/vg_sdd-root ro rd.luks.uuid=luks-a9eba963-ff2e-499b-a298-0659c5e29359 rd.lvm.lv=vg_sdd/root rd.lvm.lv=vg_sdd/swap rhgb quiet resume=/dev/disk/by-uuid/73299393-6bdb-4230-a1ca-096e5ee32396 splash=silent quiet video.use_native_backlight=1
Build Date: 25 November 2019  12:00:00AM
Build ID: xorg-x11-server 1.20.6-1.fc31 
Current version of pixman: 0.38.4
        Before reporting problems, check http://wiki.x.org
        to make sure that you have the latest version.
Markers: (--) probed, (**) from config file, (==) default setting,
        (++) from command line, (!!) notice, (II) informational,
        (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
(==) Log file: "/home/tpasch/.local/share/xorg/Xorg.4.log", Time: Fri Apr  3 19:38:52 2020
(==) Using config directory: "/etc/X11/xorg.conf.d"
(==) Using system config directory "/usr/share/X11/xorg.conf.d"
(EE) 
Fatal server error:
(EE) parse_vt_settings: Cannot open /dev/tty0 (Permission denied)
(EE) 
(EE) 
Please consult the Fedora Project support 
         at http://wiki.x.org
 for help. 
(EE) Please also check the log file at "/home/tpasch/.local/share/xorg/Xorg.4.log" for additional information.
(EE) 
(EE) Server terminated with error (1). Closing log file.
xinit: giving up
xinit: unable to connect to X server: Connection refused
xinit: server error

我想知道为什么可以启动其他 Xorg当地的主机,但我在偏僻的主持人。我是不是期待从我的终端“看到”新桌面ssh。但我希望我可以使用Xorg例如“导出”新渲染的桌面x11vnc

有没有简单的方法可以让它运行?

赏金用于:

  • 展示如何开始其他 Xorg服务器上的偏僻的来自终端会话的 Fedora 机器ssh

以下答案将不予考虑:

  • 使用XvfbXvnc等。
  • 使用某种远程桌面技术(RDP、VNC、Spice、TeamViewer...)

答案1

答案由您的命令行输入给出
$ xinit /usr/bin/startxfce4 -- :4

和 xorg 的输出

    Fatal server error:
    (EE) parse_vt_settings: Cannot open /dev/tty0 (Permission denied)

命令行中的“$”意味着您不是 root(应该是“#”),并且输出意味着您没有所需的权限。

您可以尝试
$ sudo xinit /usr/bin/startxfce4 -- :4
,但这会以 root 权限启动 xfce4。

我建议将 x-server 作为 systemd 服务启动,并与任何 x-client 分开。

答案2

超越0nd提到权限问题,我同意。

本质上,您所知道的只是命令失败,因为它无法访问/dev/tty0.只需阅读手册页即可确定 xorg 服务器有一个二进制包装器。如果不清楚的话,主机必须配置这些选项。

正确的方法是使用到位的系统。由于您需要在等式中考虑 SSH,因此请注意这确实会暴露您的系统。也就是说,手册页说更新以/etc/X11/Xwrapper.config允许终端通过needs_root_rights=yes.我相信这是解决启动问题的选项。

相关内容