有几种方法可以检测你的Linux系统是否安装了Gui。请注意,所有这些方法都只能显示是否安装了Gui。然而,它不会帮助识别Gui是否正在运行。
下面给出的所有步骤都是在Ubuntu 20.04 LTS桌面版和服务器版下测试的。
方法1、确认系统中是否安装了X session。
第一种方法是确保系统上没有安装任何X会话。为此,请运行:
$ ls /usr/bin/*session
如果你的Linux服务器系统有任何Gui会话,它应该会显示类似下面的内容。
/usr/bin/dbus-run-session /usr/bin/gnome-session-custom-session
/usr/bin/gnome-session
从上面的输出中可以看出,我的Ubuntu安装了GNOME桌面环境,如果你的系统安装了MATE,它将打印/usr/bin/mate-session。
如果你的系统安装了MATE,它将打印/usr/bin/mate-session,对于LXDE,它将返回/usr/bin/lxsession。
如果一个Linux系统没有安装任何Gui,则应该显示以下输出。
/usr/bin/byobu-select-session /usr/bin/dbus-run-session
这个命令只适用于基于Debian的系统,如Ubuntu、Linux Mint、Pop!_OS等。如果你的系统是基于RPM的系统,比如Fedora、RHEL,你会看到以下错误信息。
ls: cannot access ‘/usr/bin/*session’: No such file or Directory
在这种情况下,请参考以下方法。
方法2、检查系统中是否有Gui
检测系统上是否安装了Gui的第二种方法是使用以下type命令检查X服务器是否存在:
$ type Xorg
在安装了 Gui 的 Linux服务器系统上,你会看到以下输出。
Xorg is /usr/bin/Xorg
在只使用CLI的Linux系统上,输出应该是。
-bash: type: Xorg: not found
方法3、验证Linux系统上是否安装了Gui的另一种方法是/usr/share/xsessions/使用ls命令检查目录的内容:
$ ls /usr/share/xsessions/
Ubuntu.desktop
ls: cannot access ‘/usr/share/xsessions/’: No such file or Directory
方法4、这仅适用于基于Debian的系统。您还可以使用dpkg和grep如下命令检查是否已安装Gui :
$ dpkg -l | grep xserver
该命令列出了所有已安装的X11和xserver相关软件包。
在没有Gui的Ubuntu服务器上,你只能看到一些X服务器相关的包。
但是,这种方法并不那么可靠。因为,你可能没有使用dpkg或apt等软件包管理器就安装了DE。在这种情况下,这将不会返回任何结果。即使你安装了X服务器,然后又删除了,它仍然会显示X服务器已经安装。
如何找到你在Linux中使用的桌面环境?
这是一个额外的方法。我们可以用下面的命令轻松找到Linux Gui系统中当前的桌面环境。
$ echo $XDG_CURRENT_DESKTOP
从输出中我可以看到,我使用的是Ubuntu GNOME桌面环境。如果你没有安装任何桌面环境,你将什么都看不到。