Менеджеры экранов (Display Managers)
X
Текст предоставил Seth Kingsley.
5.6.1. Вступление
Менеджер Экранов X (XDM) это необязательный компонент X
Window System, который используется для управления входом пользователей в систему. Это
полезно в ряде ситуаций, например для минимальных ''X Терминалов'', десктопов, больших
сетевых серверов экранов. Так как X Window System не зависит от сетей и протоколов, то
существует множество различных конфигураций для X клиентов и серверов, запущенных на
различных компьютерах, подключенных к сети. XDM предоставляет
графический интерфейс для выбора сервера, к которому вы желаете подключится, и введения
информации, авторизующей пользователя, например комбинации логина и пароля.
XDM можно рассматривать как аналог программы getty(8),
предоставляющий такие же возможности для пользователей (смотрите Разд. 22.3.2 для подробной информации). И это именно
так, XDM производит вход в систему для подключенного
пользователя и запускает управляющую сессию для пользователя (обычно это менеджер окон
X). После этого XDM ожидает завершения приложения, означающее
завершение пользователем работы и отключает управляющую сессию. Затем XDM может снова вывести приглашение к входу в систему и ожидать
входа другого пользователя.
5.6.2. Использование XDM
Программой даемона XDM является /usr/local/bin/xdm. Эта программа может быть запущена от
пользователя root в любой момент, и она начнёт управлять
дисплеем X на локальной машине. Если XDM нужно запускать в
фоновом режиме каждый раз при запуске компьютера, то наиболее правильный способ -- это
добавить новую запись в /etc/ttys. Для более подробной
информации о формате и использовании этого файла смотрите Разд. 22.3.2.1. Вот строка, которую необходимо добавить
в файл /etc/ttys для того, чтобы запустить даемон XDM на виртуальном терминале:
ttyv8 "/usr/local/bin/xdm -nodaemon" xterm off secure
По умолчанию эта запись отключена; для её включения нужно заменить пятое поле с off на on и перезапустить init(8), используя
метод, описанный в Разд. 22.3.2.2. Первое поле это
название терминала, которым будет управлять программа, ttyv8.
Это означает, что XDM будет запущен на 9ом виртуальном
терминале.
5.6.3. Конфигурирование XDM
Конфигурационные файлы XDM находятся в каталоге /usr/local/lib/X11/xdm. В нём размещаются насколько файлов, которые
используются для изменения поведения и внешнего вида XDM.
Обычно это следующие файлы:
| Файл | Описание |
|---|---|
| Xaccess | Правила авторизации клиентов. |
| Xresources | Значения ресурсов X по умолчанию. |
| Xservers | Список локальных и удаленных экранов. |
| Xsession | Сценарий сессии по умолчанию. |
| Xsetup_* | Скрипт для запуска приложений до появления приглашения к входу в систему. |
| xdm-config | Глобальный конфигурационный файл для всех экранов запущенных на локальной машине |
| xdm-errors | Ошибки сгенерированные серверной программой. |
| xdm-pid | ID процесса запущенного XDM. |
В этом каталоге также находятся несколько командных сценариев и программ, используемых
для настройки рабочего стола (desktop) при запуске XDM.
Назначение каждого из этих файлов будет вкратце описано. Точный синтаксис и информация по
их использованию находятся в
xdm(1).
В конфигурации по умолчанию выводится простое прямоугольное окно приглашения ко входу
в систему с именем компьютера, написанным сверху большим шрифтом, и строками ввода
''Login:'' и ''Password:'' внизу. Это хорошая отправная точка для изменения внешнего вида
экранов XDM.
5.6.3.1. Xaccess
Протокол, по которому происходит подключение дисплеев, управляемых XDM, называется X Display Manager Connection Protocol (XDMCP).
Этот файл представляет собой набор правил для управления XDMCP соединениями с удалёнными
машинами. Он игнорируется, пока стандартный файл xdm-config не
содержит указаний по обслуживанию удалённых соединений.
5.6.3.2. Xresources
Это файл содержит установки по умолчанию для приложений, запущенных в экране выбора
серверов и экране приглашения к входу в систему. В нем может быть изменён вид программы
входа в систему. Формат этого файла идентичен файлу app-defaults, описанному в
документации к X11.
5.6.3.3. Xservers
Это список удаленных экранов, которые XDM должен предоставить как варианты для входа в
систему.
5.6.3.4. Xsession
Этот файл представляет из себя командный сценарий по умолчанию для пользователей,
вошедших в систему с использованием XDM. Обычно каждый
пользователь имеет собственный сценарий входа в файле ~/.xsession, который используется вместо этого сценария.
5.6.3.5. Xsetup_*
Они запускаются автоматически перед тем, как показывается экран выбора сервера или
экран входа в систему. Для каждого экрана (display) есть свой сценарий с именем Xsetup_, за которым следует локальный номер экрана (например, Xsetup_0). Обычно эти сценарии запускают одну или две программы в
фоновом режиме, например xconsole.
5.6.3.6. xdm-config
Здесь содержатся настройки в формате app-defaults, которые применимы ко всем экранам
данного компьютера.
5.6.3.7. xdm-errors
Здесь находится выдача X серверов, которые XDM пытается
запустить. Если экран, который XDM пытается открыть,
отключается по некоторым причинам, то это хорошее место для поиска сообщений об ошибках.
Эти сообщения также записываются в пользовательский файл ~/.xsession-errors для каждого сеанса.
5.6.4. Использование сетевого сервера
дисплеев
Для того, чтобы позволить другим клиентам подключаться к серверу дисплеев, необходимо
отредактировать правила контроля доступа и включить обслуживание сетевых соединений. По
умолчанию они выключены, что является хорошим решением с точки зрения обеспечения
безопасности. Для того, чтобы позволить XDM принимать сетевые
соединения, в первую очередь закомментируйте строку в файле xdm-config:
! БЕЗОПАСНОСТЬ: do not listen for XDMCP or Chooser requests
! Закомментируйте эти линии, если вы хотите управлять X терминалами с xdm
DisplayManager.requestPort: 0
и потом перезапустите XDM. Помните, что комментарии в
файлах app-defaults начинаются с символа ''!'', а не как обычно, ''#''. Может
потребоваться более жёсткий контроль доступа -- взгляните на примеры из Xaccess и обратитесь к странице справочника
xdm(1) за
дальнейшей информацией.
5.6.5. Замены для XDM
Существует несколько программ, заменяющих XDM. Одна из них,
kdm (поставляемая вместе с KDE),
описана далее в этой главе. В kdm имеется много визуальных и
косметических улучшений, а также функциональность, позволяющая пользователям выбирать
собственные оконные менеджеры во время входа в систему.