我可以让应用程序跨 X 个会话运行吗?

我可以让应用程序跨 X 个会话运行吗?

假设我有一个 Firefox 窗口,正在下载一个大文件,这需要很长时间。现在它运行到一半,我想切换到另一个 DE(例如从 GNOME 切换到 KDE),我可以在不中断下载的情况下执行此操作吗?

编辑:我没有使用 GDM 或 KDM 或任何桌面管理器,这可能会使情况变得更加困难......

答案1

您必须让原来的 X 服务器保持运行。您可以在另一个 tty 上启动另一个 X 服务器。因此,在典型的系统上,执行++ ctrl,然后登录并运行。您应该最终会通过+ +访问另一个 X 会话 。altf1startx -- :1ctrlaltf8

通过更改冒号后面的数字可以启动任意数量的 X 服务器;如果您使用的数字大于 12,则可以使用chvt更改为该数字而不是组合键。

如果需要,您可以设置.xinitrc启动不同桌面环境的特殊文件。因此您可能有一个.xinitrc-kde启动 KDE 会话的程序。在该文件中,您将拥有类似exec startkde.你可以通过这样做来启动startx ./.xinitrc-kde -- :1X。

如果您计划在两个会话上都运行 Firefox,则可能会出现一些问题。查看“无远程”和“ProfileManager”Firefox 的命令行选项

答案2

如果您事先计划要从多个不同的 X 会话访问一个应用程序,则可以在虚拟 X 服务器内运行它:应用程序显示在虚拟 X 服务器内,并且虚拟 X 服务器显示为任意会话内的窗口。真实 X 服务器的数量。

虚拟 X 服务器的一种可能性是虚拟网络控制器。启动vncserver程序;这将创建一个虚拟 X 服务器并运行~/.vnc/xstartup,通常运行~/.xinitrc如下startx。然后调用xvncviewer以显示包含虚拟 X 服务器显示的窗口。虚拟服务器将持续运行,直到会话退出或您运行vncserver -kill;您可以随意连接和断开观看者。您可能需要在命令行上指定显示编号,例如vncserver :3xvncviewer :3。如果没有防火墙阻碍,则可以从不同的计算机访问 VNC 会话:xvncviewer somehost:3。 VNC 服务器和查看器有多种实现。

答案3

您可以启动嵌套的 X 服务器(Xnest 或更好的 Xephyr)并在其中启动另一个图形环境。

答案4

是的你可以。如果您使用 GNOME,请单击系统->注销用户名,这将带来这样的对话:

替代文本

单击用户切换用户带我到一个 gdm 窗口,它询问我要切换到哪个用户。完成登录后,您始终可以使用CtrlAltF7或 使用我上面所述的相同命令序列切换回原始用户。

相关内容