如何从命令行检查 GUI 是否安装在 Linux 中

前几天我们的一位博客追随者试图安装 卡特林 它破坏了他的 Ubuntu 机器。 他无法通过登录屏幕。 他以某种方式设法 恢复他损坏的 Ubuntu 系统 无需重新安装。 然而,这一次他的机器只在 CLI 模式下启动。 图形 DE 似乎已经消失了,但他不太确定。 他问我,此时他如何找到 GUI 是否存在。 如果您曾经遇到过这种情况,这里有一些提示可以检查是否从命令行在 Linux 中安装了 GUI。

从命令行检查 GUI 是否安装在 Linux 中

有几种方法可以检测您的 Linux 系统是否安装了 GUI。 请注意,所有这些方法只会显示是否安装了 GUI。 但是,它不会帮助确定 GUI 是否正在运行。

下面给出的所有步骤都在 Ubuntu 20.04 LTS 桌面和服务器版本下进行了测试。

方法一:

第一种方法是确定您的系统上是否安装了任何 X 会话。 为此,请运行:

$ ls /usr/bin/*session

如果您的 Linux 系统有任何 GUI 会话,它应该显示如下内容:

/usr/bin/dbus-run-session  /usr/bin/gnome-session-custom-session
/usr/bin/gnome-session

正如你在上面的输出中看到的,我的 Ubuntu 有 侏儒 已安装桌面环境。

  • 如果您的系统有 伴侣 安装,它会打印 /usr/bin/mate-session.
  • 为了 LXDE,它会返回 /usr/bin/lxsession.

如果 Linux 中没有安装任何 GUI,您将看到如下输出:

/usr/bin/byobu-select-session  /usr/bin/dbus-run-session
从命令行检查 GUI 是否安装在 Linux 中

此命令仅适用于基于 Debian 的系统,例如 Ubuntu、Linux Mint、Pop!_OS 等。如果您的系统是基于 RPM 的系统,例如 FedoraRHEL,您将看到以下错误消息:

ls: cannot access '/usr/bin/*session': No such file or directory

在这种情况下,请参考以下方法。

方法二:

检测系统上是否安装了任何 GUI 的第二种方法是检查 X 服务器的存在 type 命令:

$ type Xorg

在安装了 GUI 的 Linux 系统上,您将看到以下输出:

Xorg is /usr/bin/Xorg

在仅 CLI 的 Linux 系统上,输出应为:

-bash: type: Xorg: not found
从命令行查找 GUI 是否安装在 Linux 中

方法三:

另一种验证您的 Linux 系统上是否安装了 GUI 的方法是检查 /usr/share/xsessions/ 目录与 ls 命令:

$ ls /usr/share/xsessions/

Ubuntu Linux GUI 系统上的示例输出:

ubuntu.desktop

仅 Ubuntu Linux CLI 机器的示例输出:

ls: cannot access '/usr/share/xsessions/': No such file or directory
从命令行验证是否在 Linux 中安装了 GUI从命令行验证是否在 Linux 中安装了 GUI

方法四:

这仅适用于基于 Debian 的系统。 您还可以检查是否安装了 GUI dpkggrep 命令如下:

$ dpkg -l | grep xserver

此命令列出所有已安装的 X11 和 xserver 相关软件包。

Ubuntu Linux GUI 系统的示例输出:

 ii  x11-xserver-utils                          7.7+8                                 amd64        X server utilities
 ii  xserver-common                             2:1.20.9-2ubuntu1.2~20.04.1           all          common files used by various X servers
 ii  xserver-xephyr                             2:1.20.9-2ubuntu1.2~20.04.1           amd64        nested X server
 ii  xserver-xorg                               1:7.7+19ubuntu14                      amd64        X.Org X server
 ii  xserver-xorg-core                          2:1.20.9-2ubuntu1.2~20.04.1           amd64        Xorg X server - core server
 ii  xserver-xorg-core-hwe-18.04                3:14.5                                amd64        Transitional package for xserver-xorg-core-hwe-18.04
 ii  xserver-xorg-hwe-18.04                     3:14.5                                amd64        Transitional package for xserver-xorg-hwe-18.04
 ii  xserver-xorg-input-all                     1:7.7+19ubuntu14                      amd64        X.Org X server -- input driver metapackage
 ii  xserver-xorg-input-libinput                0.29.0-1                              amd64        X.Org X server -- libinput input driver
 ii  xserver-xorg-input-wacom                   1:0.39.0-0ubuntu1                     amd64        X.Org X server -- Wacom input driver
 ii  xserver-xorg-legacy                        2:1.20.9-2ubuntu1.2~20.04.1           amd64        setuid root Xorg server wrapper
 ii  xserver-xorg-video-all                     1:7.7+19ubuntu14                      amd64        X.Org X server -- output driver metapackage
 ii  xserver-xorg-video-all-hwe-18.04           3:14.5                                amd64        Transitional package for xserver-xorg-video-all-hwe-18.04
 ii  xserver-xorg-video-amdgpu                  19.1.0-1                              amd64        X.Org X server -- AMDGPU display driver
 ii  xserver-xorg-video-amdgpu-hwe-18.04        3:14.5                                amd64        Transitional package for xserver-xorg-video-amdgpu-hwe-18.04
 ii  xserver-xorg-video-ati                     1:19.1.0-1                            amd64        X.Org X server -- AMD/ATI display driver wrapper
 ii  xserver-xorg-video-ati-hwe-18.04           3:14.5                                amd64        Transitional package for xserver-xorg-video-ati-hwe-18.04
 ii  xserver-xorg-video-fbdev                   1:0.5.0-1ubuntu1                      amd64        X.Org X server -- fbdev display driver
 ii  xserver-xorg-video-fbdev-hwe-18.04         3:14.5                                amd64        Transitional package for xserver-xorg-video-fbdev-hwe-18.04
 ii  xserver-xorg-video-intel                   2:2.99.917+git20200226-1              amd64        X.Org X server -- Intel i8xx, i9xx display driver
 ii  xserver-xorg-video-nouveau                 1:1.0.16-1                            amd64        X.Org X server -- Nouveau display driver
 ii  xserver-xorg-video-qxl                     0.1.5+git20200331-1                   amd64        X.Org X server -- QXL display driver
 ii  xserver-xorg-video-qxl-hwe-18.04           3:14.5                                amd64        Transitional package for xserver-xorg-video-qxl-hwe-18.04
 ii  xserver-xorg-video-radeon                  1:19.1.0-1                            amd64        X.Org X server -- AMD/ATI Radeon display driver
 ii  xserver-xorg-video-vesa                    1:2.4.0-2                             amd64        X.Org X server -- VESA display driver
 ii  xserver-xorg-video-vesa-hwe-18.04          3:14.5                                amd64        Transitional package for xserver-xorg-video-vesa-hwe-18.04
 ii  xserver-xorg-video-vmware                  1:13.3.0-3                            amd64        X.Org X server -- VMware display driver

在没有 GUI 的 Ubuntu 服务器上,您只会看到一些与 X 服务器相关的软件包:

rc  x11-xserver-utils                    7.7+8                               amd64        X server utilities
 ii  xserver-common                       2:1.20.9-2ubuntu1.2~20.04.1         all          common files used by various X servers

然而,这并不是那么可靠的方法。 因为,您可以在不使用包管理器的情况下安装 DE dpkg 或者 apt. 在这种情况下,这不会返回任何结果。 即使您安装然后删除了 X 服务器,它仍然会显示 X 服务器已安装。

如何找到您在 Linux 中使用的桌面环境?

这是一种奖励方法。 我们可以使用以下命令在我们的 Linux GUI 系统中轻松找到当前的桌面环境:

$ echo $XDG_CURRENT_DESKTOP
ubuntu:GNOME
在 Linux 中查找当前桌面环境在 Linux 中查找当前桌面环境

正如您在输出中看到的,我使用的是 Ubuntu GNOME 桌面环境。 如果您没有任何 DE,您将什么也看不到。

希望这可以帮助。

erfouris 工作室的特色图片来自 关注.