Перейти к содержанию

7.1 Как устроена среда X (How the X Environment Works)

Как уже упоминалось ранее, графический интерфейс пользователя (GUI) в Linux создаётся с помощью программного обеспечения X Window System (X Window System).

Примечание

Нередко можно услышать, что X Window System называют «X Windows», «X11» или просто «X».

X Window System предоставляет базовую систему для графического интерфейса в Linux. Она позволяет программистам запускать приложения в окнах. Кроме того, пользователи могут перемещать окна по экрану и нажимать на элементы мышью. По сути, на вашем Linux-компьютере можно реализовать графический интерфейс пользователя, который работает очень похоже на Microsoft Windows. В GUI Linux вы найдёте многие компоненты рабочего стола, знакомые вам по Windows. Например, в файловом менеджере GNOME есть значки Computer, Home и Trash, как показано на рис. 7-2.

Рис. 7-1. Рабочий стол GNOME.

Рис. 7-1. Среда рабочего стола GNOME.

Всякий раз, когда вы удаляете файл из графической среды, он перемещается в Корзину (Trash). Очистить Корзину можно, щёлкнув по ней правой кнопкой мыши и выбрав Empty Trash. Восстановить удалённые файлы можно следующим образом:

  1. Выберите значок Trash в файловом менеджере.
  2. Щёлкните правой кнопкой мыши по файлу или каталогу, который хотите восстановить.
  3. Выберите Restore в контекстном меню, показанном на рис. 7-3.

Рис. 7-2. Значки Computer, Home и Trash в GNOME.

Рис. 7-2. Значки Computer, Home и Trash в GNOME.

Рис. 7-3. Восстановление удалённых файлов.

Рис. 7-3. Восстановление удалённых файлов.

Просматривать другие компьютеры в сети можно, выбрав Browse Network. Откроется экран, аналогичный показанному на рис. 7-4.

Рис. 7-4. Просмотр сетевых узлов.

Рис. 7-4. Просмотр сетевых узлов.

Кроме того, на рабочем столе есть меню запуска со значками для запуска приложений. Оно является аналогом кнопки «Пуск» в Windows. Как было показано ранее на рис. 7-1, вы можете запустить веб-браузер Firefox или приложение LibreOffice, выбрав соответствующий значок.

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

  • X-сервер (X server). Основу Linux GUI составляет программное обеспечение X-сервера (X server software). X-сервер — это компонент, который рисует окна на экране дисплея. Он также отвечает за управление мышью и клавиатурой. Он называется сервером, поскольку способен отображать вывод не только на локальном мониторе, но и на любой другой системе в сети, также запускающей программное обеспечение X-сервера. Место, куда X-сервер отправляет свой вывод, управляется переменной окружения DISPLAY.

    За прошедшие годы на Linux-системах были реализованы два различных программных пакета X-сервера:

    • X.org-X11 X.org — наиболее широко применяемая реализация X-сервера и X-сервер по умолчанию в большинстве современных дистрибутивов Linux.
    • XFree86 Примерно до 2004 года XFree86 был версией X-сервера по умолчанию в большинстве дистрибутивов Linux. Он работает практически так же, как X.org. Фактически разработка X.org была основана на XFree86. К сожалению, с XFree86 были связаны лицензионные проблемы, которые побудили сообщество Linux перейти на X.org в качестве альтернативного X-сервера.
  • Оконный менеджер (window manager). Если X-сервер создаёт окна в среде GUI, то задача оконного менеджера — настраивать их внешний вид и поведение. Сегодня для Linux доступно большое разнообразие оконных менеджеров. Каждый предлагает свой стиль оформления и поведение графической среды. Вот некоторые из наиболее популярных оконных менеджеров:

    • enlightenment
    • fvwm
    • kwin
    • sawfish
    • twm
    • wmaker

    Какой из них лучший? По сути, нет однозначного ответа. Всё зависит от ваших предпочтений. Одни оконные менеджеры сложные и богатые возможностями, например enlightenment, kwin и sawfish. Так, enlightenment и sawfish обычно используются совместно со средой рабочего стола GNOME, тогда как kwin — с KDE. Другие оконные менеджеры весьма просты: это feeble virtual window manager (fvwm), tab window manager (twm) и window maker (wmaker). Принимая во внимание предпочтения пользователей, рекомендуется развернуть на системе более функциональный оконный менеджер — например, enlightenment, sawfish или kwin. Эти оконные менеджеры создают стиль оформления и поведение, очень похожие на Microsoft Windows, что облегчает переход пользователей.

  • Среда рабочего стола (desktop environment). Среда рабочего стола использует стиль оформления и поведение, созданные оконным менеджером, и добавляет набор инструментов и утилит, которые делают GUI по-настоящему полезным. По существу, она объединяет все компоненты GUI в единую целостную среду. Среда рабочего стола не является обязательной, но настоятельно рекомендуется. Как и X-сервер с оконными менеджерами, среда рабочего стола является модульной. Вы можете попробовать доступные среды и выбрать наиболее понравившуюся. Сегодня в Linux преимущественно используются две среды рабочего стола:

    • KDE KDE — отличная среда рабочего стола. Она предоставляет функциональность, очень похожую на Microsoft Windows, и является средой по умолчанию во многих дистрибутивах. Пример рабочего стола KDE, работающего в системе Fedora, показан на рис. 7-5.
    • GNOME Среда рабочего стола GNOME также превосходна. GNOME является средой по умолчанию в таких дистрибутивах, как Red Hat Fedora и openSUSE. Пример рабочего стола GNOME, работающего в системе openSUSE, был показан ранее в этой главе на рис. 7-1.

Рис. 7-5. Среда рабочего стола KDE.

Рис. 7-5. Среда рабочего стола KDE.

Эти три компонента — программное обеспечение X-сервера, оконный менеджер и среда рабочего стола — работают в тесном взаимодействии, создавая GUI-среду в Linux. Вы можете комбинировать эти три различных компонента, чтобы настроить систему в соответствии с вашими конкретными вкусами и предпочтениями.

Теперь давайте рассмотрим, как выполняется настройка вашей графической среды.