Как узнать какая графическая оболочка в linux

Обновлено: 05.07.2024

На днях один из подписчиков нашего блога попытался установить Katoolin, и это сломало его машину с Ubuntu. Он не мог пройти дальше экрана входа в систему. Каким-то образом ему удалось восстановить свою сломанную систему Ubuntu, не переустанавливая ее. Однако на этот раз его машина загружалась только в режиме CLI. Вроде графическое DE пошло, но он не так уверен. Он спросил меня, как он может узнать, есть ли на данный момент GUI или нет. Если вы когда-либо оказывались в такой ситуации, вот несколько советов, как проверить, установлен ли графический интерфейс в Linux из командной строки.

Проверить, установлен ли графический интерфейс в Linux из командной строки

Есть несколько способов определить, установлен ли в вашей системе Linux графический интерфейс. Обратите внимание, что все эти методы будут отображаться только в том случае, если установлен графический интерфейс или нет. Однако это не поможет определить, запущен графический интерфейс или нет.

Все приведенные ниже шаги протестированы в настольных и серверных версиях Ubuntu 20.04 LTS.

Способ 1:

Первый способ заключается в том, чтобы убедиться, что в вашей системе установлен X-сеанс. Для этого запустите:

Если в вашей системе Linux есть какой-либо сеанс графического интерфейса, он должен отобразить примерно следующее:

Как видно из приведенного выше вывода, в моем Ubuntu установлена ​​среда рабочего стола GNOME.

  • Если в вашей системе установлен MATE, он напечатает /usr/bin/mate-session .
  • Для LXDE возвращается /usr/bin/lxsession .

Если в Linux не установлен графический интерфейс, вы увидите вывод, как показано ниже:

Проверьте, установлен ли графический интерфейс в Linux из командной строки

Проверьте, установлен ли графический интерфейс в Linux из командной строки

Эта команда работает только в системах на основе Debian, таких как Ubuntu, Linux Mint, Pop!_OS и т. д. Если ваша система основана на RPM, например Fedora, RHEL, вы увидите следующее сообщение об ошибке:

В этом случае обратитесь к следующим методам.

Способ 2:

Второй способ определить, установлен ли в вашей системе какой-либо графический интерфейс, – это проверить наличие X-сервера с помощью команды type:

В системе Linux с установленным графическим интерфейсом вы увидите следующий вывод:

В системах Linux только с интерфейсом командной строки вывод должен быть таким:

Определить, установлен ли графический интерфейс в Linux из командной строки

Узнать, установлен ли графический интерфейс в Linux из командной строки

Способ 3:

Еще один способ проверить, установлен ли графический интерфейс в вашей системе Linux, — это проверить содержимое каталога /usr/share/xsessions/ с помощью команды ls:

Пример вывода в системе с графическим интерфейсом Ubuntu Linux:

Пример вывода с компьютера Ubuntu Linux CLI:

Проверьте, установлен ли графический интерфейс в Linux из командной строки

Проверьте, установлен ли графический интерфейс в Linux из командной строки

Метод 4:

Это исключительно для систем на базе Debian. Вы также можете проверить, установлен ли графический интерфейс с помощью команд dpkg и grep, как показано ниже:

Эта команда выводит список всех установленных пакетов, связанных с X11 и xserver.

Пример вывода из системы с графическим интерфейсом Ubuntu Linux:

На сервере Ubuntu без графического интерфейса вы увидите только несколько пакетов, связанных с X-сервером:

Однако это не очень надежный метод. Потому что вы могли бы установить DE без использования менеджеров пакетов, таких как dpkg или apt. В таких случаях это не даст никаких результатов. Даже если вы установили, а затем удалили X-сервер, все равно будет отображаться, что X-сервер установлен.

Как узнать, какую среду рабочего стола вы используете в Linux?

Это бонусный метод. Мы можем легко найти текущую среду рабочего стола в нашей системе с графическим интерфейсом Linux, используя следующую команду:

 Найти текущую среду рабочего стола в Linux

Найти текущую среду рабочего стола в Linux

Как видно из вывода, я использую среду рабочего стола Ubuntu GNOME. Если у вас нет DE, вы ничего не увидите.

Как мне узнать из терминала, какой у меня запущен графический интерфейс?

Система, над которой я работаю, довольно минимальна, все, что я вижу, это окна xterm, откуда я могу открывать приложения (в отдельных окнах). Я могу открыть новое окно xterm, щелкнув правой кнопкой мыши в свободной области на рабочем столе. Каждый раз, когда я открываю приложение и, следовательно, новое окно, чтобы действительно открыть окно, мне нужно щелкнуть мышью по свободной области экрана.

Я не думаю, что этот вопрос является дубликатом вопроса «Есть ли способ получить имя среды рабочего стола?», потому что моя настройка немного отличается от этой, и ни один из его ответов мне не подходит.< /p>


ни один из ответов мне не помог. система, над которой я работаю, довольно минимальна, все, что я вижу, это окна xterm, откуда я могу открывать приложения (в отдельных окнах). можно ли его назвать средой рабочего стола?

1 Ответ 1

Вы можете ввести env, чтобы выяснить, какие среды настроены.

По этой ссылке был найден следующий ответ

Чтобы использовать их, перейдите в терминал и введите:

(Будет выведено, например, «единство», если вы используете Unity)

(Будет выведено, например, «ubuntu», если вы выбрали ubuntu при входе в систему, или «ubuntu-2d», если вы выбрали его при входе в систему.)

У вас есть другие, если вы внимательно посмотрите на выходные данные env, такие как DESKTOP_SESSION и COMPIZ_CONFIG_PROFILE

Поскольку то, что вы ищете, — это имя того, что используется оконным менеджером, единственный способ, которым я вижу, как это получить, — просмотр списка процессов. Для этого есть команда под названием pgrep (Википедия). Я сделал следующее, чтобы получить имя, так как параметр -l добавляет идентификатор процесса:

pgrep -l compiz |cut -d " " -f2, поскольку процесс выполняется одним и тем же пользователем, нет необходимости добавлять префикс к части sudo. Затем вы можете использовать это для создания сценария, который выполняет действие на основе диспетчера окон.

Чтобы найти другие типы, просто измените слово compiz на другое, например mutter , kwin и т. д.

В Ubuntu 12.04 я протестировал переменные среды XDG_CURRENT_DESKTOP и GDMSESSION и получил следующие результаты:

КДЕ

XDG_CURRENT_DESKTOP= GDMSESSION=kde-plasma Unity 3d

XDG_CURRENT_DESKTOP=Unity GDMSESSION=Ubuntu Unity 2d

Гном

Классический гном

Gnome Classic без эффектов

XDG_CURRENT_DESKTOP=GNOME GDMSESSION=gnome-fallback Другие дистрибутивы на основе Ubuntu:

Linux предлагает несколько способов узнать, какая среда рабочего стола в настоящее время установлена ​​в системе.

Как вы, возможно, знаете, операционные системы на основе Linux в значительной степени ориентированы на командную строку для выполнения операций. Минимальный дистрибутив, такой как Arch Linux, представит вам темный терминал после установки. То, что делает дистрибутивы Linux интерактивными и удобными для пользователя, часто остается незамеченным — среда рабочего стола.

Большинство начинающих пользователей Linux ничего не знают о средах рабочего стола и даже не знают, какую из них они используют. Вот как вы можете проверить, какая среда рабочего стола в настоящее время установлена ​​в вашей системе Linux.

Что такое среда рабочего стола?

Среда рабочего стола – это набор программ, обеспечивающих интерактивность операционной системы для пользователей. внешний интерфейс для базовой ОС, если хотите.

Большинство сред рабочего стола Linux состоят из оконного менеджера и нескольких приложений, поддерживающих другие элементы среды. Например, KDE или K Desktop Environment использует диспетчер окон KWin и поставляется с дополнительными приложениями, такими как Konsole и Ark, отвечающими за помощь пользователям в доступе к командной строке и управлении архивами соответственно.

Оконный менеджер обычно работает поверх оконной системы. Оконная система состоит из значков, окон, меню и других элементов, составляющих графический интерфейс пользователя. Среда рабочего стола может также включать виджеты, добавляющие столу дополнительные функциональные возможности.

И этот список можно продолжить.

Проверьте текущую среду рабочего стола в Linux

С таким количеством бесплатных сред рабочего стола пользователям становится очень сложно выбрать то, что соответствует их вкусам. И незнание того, какое DE они используют в данный момент, не делает ситуацию лучше.

Существует несколько способов проверить, какая среда разработки установлена ​​в вашем дистрибутиве Linux, как с помощью командной строки, так и с помощью графического интерфейса.

Использование переменных среды

В Linux переменные среды хранят системные данные, необходимые процессам и приложениям для правильной работы. Вы можете просмотреть значение некоторых конкретных переменных среды, в которых хранится информация о среде рабочего стола вашей системы.

Выполните следующую команду:

В выходных данных будет отображаться имя вашей среды рабочего стола.

Вы также можете просмотреть двоичный файл *-session, который обычно находится в каталоге /usr/bin, чтобы получить аналогичные результаты.

Быстрый взгляд на отображаемые записи дает представление об окружении рабочего стола системы. Как видите, файл xfce4-session означает, что система использует Xfce.

Использование Neofetch

Neofetch – это инструмент командной строки, который отображает системную информацию в удобном формате. Neofetch не входит в стандартные пакеты Linux, поэтому вам придется вручную установить его в вашей системе.

После установки выполните следующую команду, чтобы запустить Neofetch:

Помимо среды рабочего стола, в данном случае Xfce 4.16, Neofetch отображает имя ОС, версию ядра, имя хоста, разрешение экрана, имя оболочки и многое другое.

Использование графического интерфейса

Неудивительно, что вы также можете проверить имя среды рабочего стола, используя саму среду рабочего стола, т. е. графически. Вы можете перейти к настройкам вашей системы, чтобы просмотреть раздел «О программе», чтобы получить подробную информацию о вашей ОС. Хотя эта опция есть не на всех настольных компьютерах, у большинства она есть, и если она есть и у вас, считайте, что вам повезло.

Например, на рабочем столе GNOME вы можете быстро проверить сведения о системе, используя раздел «О программе» в настройках.

Все еще нет радости? Вы можете просто погуглить, какая среда рабочего стола поставляется с вашим дистрибутивом Linux по умолчанию. Потому что в большинстве случаев у вас по-прежнему будет установлен DE по умолчанию, если вы, конечно, не изменили его вручную.

Linux без среды рабочего стола?

Теперь, когда вы знаете, какую роль играют среды рабочего стола и оконные менеджеры, пришло время воспользоваться возможностями, которые Linux предоставляет своим пользователям. Вы даже можете использовать свою систему вообще без среды рабочего стола. Хотя это не рекомендуется, если вы действительно не любите тьму и не разбираетесь в Linux.

Те, кто по-прежнему хочет продолжать использовать среду рабочего стола, могут поэкспериментировать с различными рабочими столами, прежде чем выбрать «тот самый». Вы можете устанавливать среды рабочего стола и оконные менеджеры так же, как вы обычно устанавливаете другие программы в Linux.

Как узнать, какую среду рабочего стола я использую?

Я хочу сделать это с помощью командной строки.


Если вы ищете способ отличить xubuntu от lubuntu от edubuntu и т. д., и ваши операционные системы были установлены с компакт-диска, может помочь следующее: grep cdrom: /etc/apt/sources.list | sed -n '1s|.*deb cdrom:\[\([^ ]* *[^ ]*\).*|\1|p'

@Pandya нет, значения будут другими, но на дубликате показано, как получить значение для обоих (и другие примеры для WM и DE).

6 ответов 6

И вы можете попробовать $DESKTOP_SESSION для DE.

Моя вторая проблема связана с DE (среда рабочего стола), на которую вы ответили. Я думаю, что ответ должен быть gnome, но это ubuntu, почему?

Эта команда кажется полезной:

  • в GNOME возвращает /usr/bin/gnome-session (и многое другое)
  • в MATE возвращается /usr/bin/mate-session (и не только)
  • в LXDE возвращает /usr/bin/lxsession (и не только)
  • в JWM возвращает /usr/bin/icewm-session (должен быть jwm-session, а не?!)

У меня есть /usr/bin/ck-launch-session /usr/bin/ck-xinit-session /usr/bin/gnome-session. И что? Я использую CentOS.

В Raspberry Pi 2 у нас есть выбор из 3 оконных сессий: lx и openbox. Как я уже отмечал ранее, echo $DESKTOP_SESSION ==> LXDE-pi (значение установки) является определяющим индикатором для RPI2.

Я протестировал лучшие из найденных инструментов:

a — установлен GNOME под Linux Mint
b — GNOME под Linux Mint Live USB
c — MATE под Linux Mint
d — LXDE под Lubuntu
e — JWM под Puppy Linux (JWM — это не среда рабочего стола, а многоуровневый оконный менеджер).
f — XFCE под Debian Buster

Результаты

окружение | grep DESKTOP_SESSION= (так себе)

эхо $GDMSESSION (так себе)

pgrep -l "gnome|kde|mate|cinnamon|lxde|xfce|jwm" или ps -A | egrep -i "gnome|kde|mate|cinnamon|lxde|xfce|jwm" (ну, но не идеально)

HardInfo (очень хорошо, но не идеально)

Заключение

Комбинация HardInfo и команды ps -A | egrep -i "gnome|kde|mate|cinnamon|lxde|xfce|jwm", вероятно, даст нужный ответ.

Добавление case f (Raspberry Pi 2 под управлением Jessie 27 мая 2016 г.): echo $DESKTOP_SESSION ==> LXDE-pi, что говорит само за себя.

в моем случае мне нужно знать, использую ли я unity или lxde, и после тестирования многих команд я обнаружил, что env | grep XDG_CURRENT_DESKTOP говорит, что мне нужно.

Для оконного менеджера вы можете использовать:

Sysinfo не сообщает вам, какой оконный менеджер вы используете. Он только говорит вам, какую версию xorg вы используете — по крайней мере, в моей системе.

Это единственный ответ, который, кажется, не только работает, но работает на всех системах и обеспечивает краткий и проницательный вывод - и я не говорю об ответе «Любопытного ученика». «Ответ» любопытного ученика следует игнорировать, поскольку он отвлекает от единственно реального ответа.

Я бы не считал ответ здесь уместным, поскольку оконный менеджер — это отдельная проблема по сравнению с окружением рабочего стола, пожалуйста, исправьте, если я ошибаюсь.

В терминале или консоли вы можете запустить:

То, что отображается в большем количестве строк, должно быть ответом


то же самое здесь.добавление xfce к регулярному выражению, по крайней мере, показывает что-то полезное, но потребуется много эвристик, чтобы с уверенностью определить, какое DE вы используете

Вы можете запустить HardInfo. Он готов по умолчанию, по крайней мере, в Linux Mint; или вы можете установить его (из Synaptic, . ).

Его можно запустить а) из главного меню > Поле поиска > аппаратная информация, или б) из главного меню > Все приложения > Системные инструменты или Администрирование > Информация о системе, или в) из главного меню > Все приложения > Все > Сведения о системе, или d) из терминала или консоли > hardinfo > Enter, или e) из диалогового окна "Выполнить приложение" (Alt+F2) > hardinfo > Enter.

После того, как HardInfo откроется, вам просто нужно щелкнуть элемент «Операционная система» и посмотреть на строку «Среда рабочего стола».

Читайте также: