我正在按照中的指南设置一个轻量级虚拟机Ubuntu 文档
我想要做的是通过 ssh 进入虚拟机,然后启动 GUI 应用程序。我不需要/想要桌面。
首先我安装了xorg。但我无法启动 GUI。文档中的下一步是安装“窗口管理器”,但不清楚为什么这是必要的。
运行 GUI 的最小程序是什么?
我问这个ubuntuSE,但所有答案都需要安装窗口管理器,所有这些都提供桌面。最好的答案是继续安装窗口管理器,然后限制 startx 对 .xintrc 文件的操作。
安装 openbox 将我的原始虚拟机的大小从 0.9 GB 增加到 2.2 GB。我想最小化虚拟机的大小。允许我启动 GUI 的最小程序组是什么?
答案1
如果您只想从远程显示器运行 GUI 应用程序,并且不想在虚拟机内拥有图形环境,那么您不需要安装除应用程序及其依赖的任何库之外的任何内容。
您不需要安装 X 服务器,它提供了运行 GUI 应用程序的功能(它提供了供应用程序绘制的底层画布)。
您不需要安装窗口管理器或桌面环境:它们提供诸如自动窗口放置、在多个工作区之间切换的方法、操作窗口的键盘和鼠标命令、启动应用程序的方法、各种小部件和小程序(小程序)等服务。或多或少永久显示在屏幕上某处的项目),……虽然您可以在没有窗口管理器的情况下运行 GUI,但它几乎无法使用。但您只需要(实际上只能)为您的显示提供一个窗口管理器:如果您远程运行 GUI 应用程序,它仍然由本地窗口管理器管理。
答案2
如果您远程访问该程序,则服务器上不需要 GUI 或窗口管理器。 SSH 可以配置为执行 X11Forwarding。您的一端需要一个 X 服务器来提供显示器、键盘和鼠标。
另外,还有提供虚拟显示驱动程序的 Xserver。如果您需要 Xserver,但不需要使用 XWindow 显示进行交互或查看输出,那么这会很有用。我见过的最常见的用途是生成报告。
RDP 或 VNC Xserver 可用于在没有窗口管理器的情况下提供显示。您需要向程序提供显示 ID。有些程序有显示参数,但通常使用 DISPLAY 环境变量来指定显示。
我在我的帖子中记录了我所做的事情使用 VNC 和 RDP 的远程桌面。如果您只需要显示器,则可以跳过安装 xdm。您也可以跳过 xinetd 并从命令行运行 VNC 服务器。