# Руководство пользователя &tdm;

## Введение

&tdm; предоставляет возможность входа в систему через графический интерфейс. Система запрашивает логин (имя пользователя) и пароль, опознаёт пользователя и запускает сеанс. По многим параметрам &tdm; превосходит &xdm;, менеджер входа в систему X-сервера.

## Руководство по быстрому запуску

В этом руководстве подразумевается, что:

- Система Х-Window настроена и запускается из командной строки по команде `startx`.

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

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

## Установка сеанса по умолчанию

1. Создайте или откройте файл `~/.xinitrc`

   Если у вас уже есть работающий файл `~/.xinitrc`, переходите к следующему шагу.

2. Добавьте в файл `~/.xinitrc` строку, запускающую выбранный вами оконный менеджер или среду, если такой строки там нет.

   Если вы используете &kde;, введите:

       starttde

   Что касается других оконных менеджеров или сред — ищите аналогичную команду в их документации.

3. Создайте ссылку с помощью команды

       ln -s ~/.xinitrc ~/.xsession

Теперь при вводе в командной строке команды ``startx``система будет запускать X-Window с сеансом &kde;. Далее попытайтесь настроить систему на запуск &tdm;.

Войдите в систему как `root` и введите в командной строке ``tdm``.

Вы увидите окно входа в систему, более полно описанное в разделе login.

Теперь при успешном входе пользователя в систему через tdm с выбранным сеансом по умолчанию будет запускаться &kde;.

Если вы хотите настроить другие учётные записи, повторите эту процедуру для каждой из них.

Это руководство по быстрому запуску затрагивает только установку и запуск. Если вы хотите более полно настроить &tdm;, например, чтобы в окне входа в систему не отображались имена пользователей, чтобы система предоставляла возможность выбора различных типов сеансов и так далее, то читайте это руководство дальше.

## Окно входа в систему

Интерфейс &tdm; включает два диалоговых окна. Компоненты основного окна:

- Поле Имя пользователя для ввода имени пользователя.

- Поле Пароль для ввода пароля.

- Программа также может выводить логотип каждого пользователя, например, фотографию. Вместо того, чтобы вводить имя пользователя, можно просто щёлкнуть по соответствующему логотипу (это свойство присуще окну входа в систему &IRIX;).

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

- Область окна справа от полей Имя пользователя:, Пароль: и Тип сеанса: может быть использована для показа какого-либо изображения или аналоговых часов.

- По нажатию на кнопку Войти система проверяет имя пользователя и пароль и при отсутствии ошибок запускает сеанс выбранного типа.

- По нажатию на кнопку Очистить система удаляет текст из полей Имя пользователя и Пароль.

- Кнопка Меню открывает меню со следующими пунктами:

  - Команда Перезапустить Х-сервер останавливает X-сервер и запускает вновь. Команда применима к локальным дисплеям.

  - Команда Закрыть соединение (не удалённых дисплеях) закрывает текущее соединение с сервером &XDMCP;. Если соединение было установлено с помощью программы выбора хоста, управление будет возвращено этой программе. В противном случае это действие приведёт к сбросу X-сервера и повторному выводу диалога регистрации пользователя. Команда применима только к удалённым дисплеям.

  - На локальных мониторах пункт Консольный вход (может отсутствовать), при выборе которого система останавливает запущенный Х-сервер и переходит в текстовый режим входа в систему. Если за некоторое время вход не был осуществлён, будет вновь выведено графическое окно входа в систему. Чтобы использовать эту возможность, вам надо использовать синтаксис local@<console> в файле `Xservers` (см. комментарии в этом файле).

- Кнопка Завершение работы... открывает диалог Выключение. Может отсутствовать.

Диалоговое окно Выключить предоставляет набор переключателей, позволяющих выбрать один из следующих вариантов:

Выключить

- Выключить систему.

Перезапустить

- Завершает работу системы и перезагружает компьютер. Если в системе используется загрузчик Lilo, в выпадающем списке можно будет выбрать ядро операционной системы, которое будет использовано во время перезагрузки.

Перезапустить Х-сервер

- Остановить и снова запустить Х-сервер. Обычно вам следует использовать этот параметр, если вы перед этим изменили конфигурацию Х11.

Консольный режим

- Останавливает Х-сервер и возвращает консольный режим с помощью перевода системы на уровень выполнения 3. Обычно это делается перед обновлением или перенастройкой X11.

По нажатию соответствующей кнопки система выполняет выбранное действие, по нажатию кнопки Отмена вы возвращаетесь в основное диалоговое окно &tdm;.

## Настройка &tdm;

В этой главе предполагается, что &tdm; в вашей системе уже установлен, и вы просто хотите более тонко настроить его.

При запуске &tdm; считывает настройки из папки `$TDEDIR/share/config/tdm/` (возможно, в вашей системе это `/etc/kde3/tdm/` или `/etc/X11/kde3/tdm/` или другая папка).

Основной конфигурационный файл - &tdmrc;, он содержит ссылки на остальные файлы, которые могут находиться где угодно в системе, причём обычно это не вызывает проблем. Единственное исключение - ссылки на конфигурационные файлы уже установленного &xdm;. При установке &tdm; использует их, если находит уже установленный &xdm;.

&tdm; запускается перед входом в систему любого пользователя, он не связан с каким-либо одним пользователем. Поэтому невозможно иметь отдельные конфигурационные файлы для каждого пользователя, для всех используется один общий файл &tdmrc;. Конфигурация &tdm; может быть изменена только пользователями, имеющими права записи в файл `$`TDEDIR`/share/config/tdm/tdmrc` (обычно это системные администраторы, входящие в систему под пользователем `root`).

Настройка &tdm; осуществляется изменением файла &tdmrc; или через модуль Центра управления KDE (раздел Системное администрирование Менеджер входа в систему). См. справку Центра управления KDE.

Оставшаяся часть данной главы посвящена настройке &tdm; с помощью модуля Центра управления KDE. Для настройки локального входа в систему его возможностей достаточно. Следующая глава описывает параметры файла &tdmrc;. Прямое редактирование этого файла требуется для настройки удалённого входа или нескольких сеансов &tdm; одновременно.

### Модуль «Менеджер входа в систему» Центра управления KDE

В этом модуле вы можете настроить различные параметры &tdm;, менеджера входа в систему &kde;, а именно: его внешний вид, список пользователей, которым разрешается входить в систему, и пользователей, которым разрешается выключать компьютер.

Все параметры сохраняются в файле &tdmrc;. Оригинальный файл содержит много комментариев, поясняющих назначение параметров. Использование данного модуля приводит к их потере. Поэтому дополнительно допустимые параметры &tdmrc; описаны в tdm-files.

Все параметры, перечисленные в этой главе, связаны с соответствующими параметрами в &tdmrc;. Все параметры, доступные в Центре управления, напрямую доступны в &tdmrc;, но не наоборот.

Этот модуль делится на несколько разделов: Внешний вид, Шрифт, Фон, Выключение Пользователи и Удобства.

Вы можете переключаться между разделами, используя вкладки вверху окна.

Работа с Центром управления &kde; требует дополнительных полномочий. В случае их отсутствия нужно нажать кнопку Режим администратора... и ввести пароль администратора.

#### Внешний вид

Здесь вы можете настроить внешний вид &tdm; — графического менеджера входа в систему из &kde;.

Приглашение - это заголовок окна входа в систему. Использование приглашения особенно удобно, если пользователи могут входить в несколько систем. Вы можете употреблять различные заполнители (комбинации символов, которые программа заменит некоторым значением). Они описаны в файле &tdmrc;, в комментариях к параметру `GreetString`.

При входе пользователя система может показывать в окне входа текущее время, логотип или не показывать ничего. Сделайте выбор с помощью переключателей Область расположения логотипа. Это соответствует параметру `LogoArea` в &tdmrc;.

Если вы выбрали Показать логотип, вы можете указать изображение:

- Перетащите файл изображения на кнопку логотипа.

- Нажмите на кнопку и выберите изображение с помощью диалогового окна.

По умолчанию выводится изображение `$`TDEDIR`/share/apps/tdm/pics/tdelogo.png`.

Параметры группы Позиция: определяют положение окна входа в систему на экране. Параметр X: — горизонтальная составляющая, Y: — вертикальная. Положение задаётся для центра окна входа в процентах от размера экрана относительно левого верхнего угла. Эта группа соответствует параметру `GreeterPos` файла &tdmrc;.

Стиль &tdm; можно настроить через параметры Стиль GUI и Цветовая схема:. Они соответствуют параметрам `GUI Style` и `ColorScheme` в &tdmrc; соответственно.

Ниже находится выпадающий список для выбора языка диалога входа. Он соответствует параметру `Language` файла &tdmrc;.

#### Шрифт

Здесь вы можете выбрать шрифты, которые будут использоваться в окне входа в систему. Для этого могут быть использованы только общедоступные шрифты.

Данным выпадающим списком настраиваются три стиля шрифта: Общий:, Ошибки:, Приглашение:. Кнопка Выбрать... открывает диалог выбора шрифта.

- Шрифт Общий используется во всех случаях, кроме указанных ниже.

- Шрифт Ошибки используется, если вход в систему завершился неудачно.

- Шрифт Приглашение используется в заголовке окна (строка приглашения).

Флажок Использовать сглаживание шрифтов включает/выключает режим сглаживания шрифтов.

#### Фон

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

На вкладке Фон вы можете выбрать фоновое изображение, настроить цвета фона и указать используемый эффект.

Чтобы изменить цвета фона по умолчанию, нажмите любую из кнопок цвета и выберите новый цвет.

Выпадающий список над этими кнопками содержит несколько вариантов смешивания цветов (результат выбора показывается на изображении монитора в верхней части окна):

Один цвет

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

Узор

- Чтобы использовать этот режим, вам надо выбрать два цвета (используя кнопки выбора основного и вторичного цвета).

  Выберите узор в выпадающем списке и нажмите Применить. &kde; установит выбранный узор, раскрашенный цветами, которые вы выбрали. Чтобы добавить другие узоры, смотрите главу Добавление, удаление и изменение узоров и обоев.

Фоновая программа

- Если вы включите этот флажок, &kde; будет использовать внешнюю программу для создания фона. Это может быть любая программа на ваш выбор. Для получения информации по этой возможности смотрите главу Использование внешней программы.

Горизонтальный градиент

- При этом режиме вы выбираете два цвета с помощью двух кнопок выбора цвета. &kde; создаст фон, используя плавный переход между цветом, заданным основным цветом фона (у левой границы экрана), и цветом, заданным вторичным цветом фона (у правой границы экрана).

Вертикальный градиент

- При этом режиме вы выбираете два цвета с помощью двух кнопок выбора цвета. &kde; создаст фон, используя плавный переход между цветом, заданным основным цветом фона (у верхней границы экрана), и цветом, заданным вторичным цветом фона (у нижней границы экрана).

Пирамидальный градиент

- При этом режиме вы выбираете два цвета с помощью двух кнопок выбора цвета. &kde; создаст фон, используя плавный переход между цветом, заданным основным цветом фона (в каждом углу экрана), и цветом, заданным вторичным цветом фона (по центру экрана).

Крестообразный градиент

- При этом режиме вы выбираете два цвета с помощью двух кнопок выбора цвета. &kde; создаст фон, используя плавный переход между цветом, заданным основным цветом фона (в каждом углу экрана), и цветом, заданным вторичным цветом фона (по центру экрана).Полученная фигура будет отличаться от пирамидального градиента.

Эллиптический градиент

- При этом режиме вы выбираете два цвета с помощью двух кнопок выбора цвета. &kde; создаст фон, используя плавный переход между цветом, заданным основным цветом фона (в каждом углу экрана, по эллипсу), и цветом, заданным вторичным цветом фона (по центру экрана).

Кнопка настройки понадобится, если вы хотите настроить фоновую программу. При нажатии на кнопку появится окно настройки.

Обои

Фоновое изображение (обои) выбирается на вкладке Фон. Выпадающий список Изображение содержит коллекцию фоновых изображений. Кнопка открытия файла (с изображением папки) открывает диалог выбора файла изображения.

Шесть способов показа обоев:

Нет изображения

- Фон заливается только фоновыми цветами.

В центре

- Изображение будет выводится по центру экрана. Фоновые цвета займут всё оставшееся свободное место.

Черепицей

- Копии изображения заполнят весь рабочий стол. Первое изображение будет расположено в верхнем левом углу экрана.

Черепицей от центра

- Копии изображения заполнят весь рабочий стол. Первое изображение будет расположено в центре экрана.

По центру с масштабированием

- Изображение будет помещено в центр экрана и увеличено под размер рабочего стола. Пропорции изображения не изменятся, поэтому оно не будет искажено.

На весь рабочий стол

- Изображение будет растянуто по всей площади рабочего стола.

#### Выключение

Разрешить выключать компьютер

Данный выпадающий список используется для выбора пользователей, имеющих право завершать работу системы:

- Никому: никто не сможет выключить компьютер с помощью &tdm;, для этого необходимо будет войти в систему.

- Каждому: любой пользователь может выключить компьютер с помощью &tdm;.

- Администратору: перед выключением компьютера &tdm; запросит пароль root.

Вы можете отдельно настроить, каким пользователям разрешено выключать компьютер с консоли и используя удалённый доступ.

Команды

Используйте эти поля, чтобы задать команды выключения.

По умолчанию команда Остановка: вызывает `/sbin/halt`, команда Перезагрузка: — `/sbin/reboot`.

Если переключатель Показать параметры загрузки включён, &tdm; при перезагрузке предоставит параметры Lilo. Вам необходимо будет указать каталог программы `lilo` и каталог map-файла lilo. Замечание: этот параметр доступен не для всех операционных систем.

#### Пользователи

Здесь вы можете выбрать способ представления пользователей в окне входа в систему.

Вы можете полностью отключить список пользователей в &tdm; с помощью переключателя Показывать список. Возможности указания пользователя:

Показать список

- Показывать только выбранных пользователей.

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

Обратное выделение

- Вам необходимо будет указать пользователей, которые не будут показываться, все остальные пользователи будут видны.

Пользователей можно сортировать как по имени, так и по системным UID, то есть задать диапазон UID пользователей, которые будут показываться в списке. По умолчанию пользователи с ID меньше 1000 (обычно системные пользователи или демоны) и больше 6500 в окне входа в систему не показываются.

Вы можете включить флажок Сортировать пользователей, чтобы сортировать пользователей в списке по алфавиту. Если флажок установлен, пользователи будут выведены в порядке, в котором они перечислены в файле паролей. &tdm; будет также дополнять имя пользователя при вводе, если включить Автозавершение.

Если вы выбрали показывать пользователей, в окне входа в систему будет выведен список пользователей с выбранными рисунками. Перед входом пользователь выбирает по имени или изображению и вводит пароль.

Если вы используете изображения, связанные с пользователями, вы можете настроить эти изображения.

Здесь вы можете указать источник изображений пользователей. «Административный» означает системную папку, эти изображения можно видеть ниже. «Пользовательский» означает, что для каждого пользователя будет использоваться изображение из файла $HOME/.face.icon, расположенного в его домашней папке. Два параметра в середине позволяют определить порядок предпочтения, если доступны оба источника.

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

#### Удобства

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

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

##### Автоматический вход в систему

Автоматический вход в систему позволяет входить в систему без пароля. Его можно установить переключателем Разрешить автоматический вход в систему.

В списке Пользователь: выбирается учётная запись для автоматического входа в систему.

##### Вход без пароля

Вы можете позволить пользователям входить в систему без указания пароля (флажок Разрешить вход без пароля).

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

Напомним, что этот параметр следует использовать только на компьютерах, не нуждающихся в безопасности. Если вашей машиной пользуются посторонние люди, позаботьтесь, чтобы этой возможностью обладали только пользователи с очень ограниченными правами, например, `guest`.

Вы также можете задать, какой пользователь будет выбран при запуске &tdm;. По умолчанию указан пункт Нет, но вы можете выбрать Предыдущий, чтобы &tdm; было выведено имя последнего пользователя, входившего в систему, также вы можете Указать конкретного пользователя, который всегда будет выбран в списке. &tdm; может устанавливать фокус в поле ввода пароля, так что когда перед вами будет окно входа в систему &tdm;, вы сразу сможете вводить пароль.

Автоматический вход в систему после перезагрузки Х-сервера позволит вам войти в систему, пропустив процедуру регистрации, после сбоя Х-сервера.

&tdmrc-ref;

## Настройка системы для использования &tdm;

В данной главе подразумевается, что подсистема &X-Window; уже настроена и нужно только включить графический вход в систему.

### Установка &tdm;

Уровень запуска по умолчанию определяет, загружается ваш компьютер в режиме терминала (текстовой консоли) или в графическом режиме входа в систему. Уровень запуска устанавливается программой /sbin/init и задаётся в конфигурационном файле `/etc/inittab`. В разных системах &UNIX; (и различных дистрибутивах &Linux;) эти параметры различаются, но начало файла `/etc/inittab` выглядит приблизительно так:

    # Default runlevel. The runlevels used by RHS are:
    # 0 - halt (Do NOT set initdefault to this)
    # 1 - Single user mode
    # 2 - Multiuser, without NFS
    # 3 - Full multiuser mode
    # 4 - unused
    # 5 - X11
    # 6 - reboot (Do NOT set initdefault to this)

    id:3:initdefault:

Все строчки этого отрывка, кроме последней, являются комментариями. Комментарии показывают, что уровень 5 используется для работы в X11, а уровень 3 - для работы в многопользовательском режиме без X11 (режим консоли). Последняя строка устанавливает уровень запуска по умолчанию равным 3. Если в вашей системе используется графический вход в систему (например, с использованием &xdm;), уровень запуска по умолчанию равен уровню, заданному для X11.

Уровень выполнения с графическим входом в систему (&xdm;) некоторых распространённых дистрибутивов Linux:

- 5 для &RedHat; 3.х и более поздних и для &Mandrake;

- 4 для Slackware

- 3 для &SuSE; 4.х и 5.х

Первое, что необходимо сделать при настройке системы - убедиться, что вы можете запустить &tdm; из командной строки. Если это работает, вы сможете так настроить систему, чтобы &tdm; автоматически запускался при перезагрузке.

Чтобы проверить &tdm;, вам надо перевести систему на уровень, при котором &xdm; не запускается автоматически. Для этого введите команду:

    /sbin/init 3

Вместо числа `3` введите номер уровня, соответствующего режиму консоли (если это не 3).

Если операционная система использует подключаемые модули аутентификации (PAM), — это является обычным для современных систем &Linux; и &Solaris;, — нужно проверить, что PAM разрешают вход в систему через службу с названием `kde` (если перед этим &xdm; работал корректно, то никаких изменений не требуется). Файл настройки — `/etc/pam.conf` или `/etc/pam.d/kde`. Настройка PAM выходит за рамки данного руководства. Обратитесь к документации, расположенной в `/usr/share/doc/*pam*/html/`.

Теперь, чтобы проверить работоспособность &tdm;, введите следующую команду:

    tdm -nodaemon

Если в результате выводится диалог входа в систему &tdm; и вы можете войти, всё отлично. Сбой обычно происходит, если программе не удаётся найти или подключить разделяемые библиотеки &Qt; или &kde;. Если у вас установлен двоичный дистрибутив библиотек &kde;, убедитесь, что библиотеки могут обнаружить &tdm;; попытайтесь настроить соответствующие переменные окружения так, чтобы они указывали на библиотеки &kde; и &Qt;.

Например:

    export
    TDEDIR=/opt/kde
    export
    TQTDIR=/usr/lib/qt2
    export
    PATH=$TDEDIR/bin:$TQTDIR/bin:$PATH
    export
    LD_LIBRARY_PATH=$TDEDIR/lib:$TQTDIR/lib

Если все попытки безуспешны, попытайтесь запустить &xdm;, чтобы убедиться, что вы не столкнулись с более серьёзной проблемой конфигурации Х.

Если &tdm; успешно запускается, вы можете заменить &xdm; на &tdm;. Напомним, что шаги, которые необходимо проделать, зависят от дистрибутива.

- &RedHat;: откройте файл `/etc/inittab` и замените в нём xdm на &tdm; (включая все пути к файлам).

      x:5:respawn:/usr/X11/bin/xdm -nodaemon

  и замените на:

      x:5:respawn:/opt/kde/bin/tdm

  Что заставить `init`(8) запустить &tdm; когда система перейдёт на уровень 5. Замечание: &tdm; не нуждается в данном случае в параметре `-nodaemon`.

- &Mandrake;: уровень запуска X11 в `/etc/inittab` вызывает сценарий оболочки `/etc/X11/prefdm`, который предоставляет возможность выбора из нескольких оконных менеджеров, в том числе &tdm;. Убедитесь, что пути к файлам указаны верно.

- &SuSE;: добавьте в начало файла `/sbin/init.d/xdm` строки:

      . /etc/rc.config
      DISPLAYMANAGER=tdm
      export DISPLAYMANAGER

- Для FreeBSD, отредактируйте `/etc/ttys` и найдите строку наподобие этой:

      ttyv8   "/usr/local/bin/tdm -nodaemon"  xterm   off secure

  и замените её на:

      ttyv8   "/usr/local/bin/tdm -nodaemon"  xterm   on secure

- Для большинства остальных дистрибутивов подходит один из вышеприведённых вариантов.

На этой стадии вы можете проверить работу &tdm;. Для этого переведите систему на уровень запуска, при котором автоматически запускается &tdm;. Выполните команду:

    /sbin/init 5

Вместо числа `5` введите номер уровня, на котором происходит запуск Х11 (если это не 5).

Наконец, в файле `/etc/inittab` укажите значение параметра `initdefault`, равное уровню, на котором происходит запуск X11.

Перед внесением изменений убедитесь, что при возникновении проблем вы сможете запустить систему заново. Вам необходим «спасательный» диск, поставляемый вместе с операционной системой, или специальный «спасательный» дистрибутив, такой как `tomsrtbt`. Пренебрегая этим советом, вы подвергаете опасности систему.

Это чаще всего касается изменений следующей строки:

    id:3:initdefault:

на

    id:5:initdefault:

При перезагрузке системы вы увидите графический диалог входа в систему &tdm;.

Наиболее вероятная причина сбоя на этом этапе состоит в том, что среда, используемая после перезагрузки, отличается от той, которую вы тестировали из командной строки. Если вы пытаетесь совместно использовать две версии KDE, убедитесь для каждой из них, что переменные окружения `PATH` и `LD_LIBRARY_PATH` согласуются, и что скрипты запуска системы не перезаписывают их каким-либо образом.

## Поддержка нескольких оконных менеджеров

&tdm; способен находить некоторые оконные менеджеры и окружения рабочего стола. При установке нового менеджера или окружения в диалоговое окно Тип сеанса будет автоматически добавлен соответствующий пункт.

Если вы установили менеджер, который &tdm; не поддерживает, вам нужно проверить, находится ли соответствующее приложение в одном из каталогов, перечисленных в переменной `PATH`, и что во время установки файл не был переименован.

Если это не помогло, добавьте новый тип сеанса вручную.

Типы сеансов определены в файлах .desktop из `$`TDEDIR`/share/apps/tdm/sessions`. Вы можете создать в этом каталоге файл `.desktop` с подходящим именем. Пример файла:

    [Desktop Entry]
    Encoding=UTF-8  UTF-8 применяется всегда,
    параметр можно опустить
    Type=XSession XSession применяется всегда,
    параметр можно опустить
    Exec=имя_приложения Передаётся
    команде evalоболочки Bourne
    TryExec=executable name Поддерживается, но не
    является необходимым
    Name=имя_в_списке_сеансов

Есть три очень важных типа сеансов:

По умолчанию

- Тип сеанса &tdm; по умолчанию обычно &kde;, но системный администратор может это изменить.

Другой

- «Другой» — сеанс, который запускается через ~/.xsession, если этот файл существует.

Безопасный

- Безопасный — очень простой тип сеанса, используемый только для целей отладки.

Чтобы добавить тип сеанса, скопируйте файл .desktop в каталог файлов настройки и отредактируйте его. Вместо того, чтобы удалять ненужный файл, вы можете скрыть его в списке, установив параметр Hidden=true. Для неизменяемых (перечисленных выше) типов сеансов файлов .desktop не существует, поэтому вы не можете изменить их таким способом. Теперь вы знаете, как добавлять новый тип сеанса.

## Использование &tdm; для удалённого входа в систему (через &XDMCP;)

&XDMCP; — стандарт Open Group, X Display Manager Control Protocol (протокол удалённого управления менеджером рабочего стола Х). Он используется для установки сетевых соединений между различными системами.

&XDMCP; полезен в ситуациях, когда есть несколько рабочих станций и мощный сервер, предоставляющий ресурсы для X-сеансов. Рабочим станциям достаточно иметь ресурсы для работы X-сервера (подойдут даже устаревшие машины на базе процессоров Pentium и i486 с 16 Мб оперативной памяти). С помощью &XDMCP; они смогут запустить полноценный сеанс &kde; с сервера. Создание добавочных сеансов на сервере требует минимум дополнительных ресурсов.

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

## Дополнительные разделы

### Сокеты команд

Это расширение позволяет получить удалённый доступ к &tdm;. Эта возможность в первую очередь предназначена для использования &ksmserver; и &kdesktop; из запущенного сеанса, но также может быть использована и другими приложениями.

Сокеты — обычные &UNIX; сокеты, которые находятся в подкаталогах каталога определённого параметром `FifoDir`=.... Все сокеты названы `socket`, и права доступа к подкаталогам, в которых они находятся: `rw-rw-rw-`(0666). Это сделано потому, что некоторые операционные системы игнорируют права доступа к файлам сокетов.

Существует два типа сокетов: один глобальный (dmctl) и по одному на каждый дисплей (dmctl-<display>).

Глобальными подкаталогами сокетов владеет администратор системы, а подкаталогами дисплеев — пользователь сеанса (администратор или другой вошедший в систему пользователь). Группа владельца подкаталогов определяется параметром FifoGroup= (значение по умолчанию — root). Права доступа к файлам подкаталогов: rwxr-x--- (0750).

Поля команды отделены знаками табуляции (\t), поля списков — пробелами, поля, выделенные символами — знаками \s.

Команды оканчиваются переводом строки (\n).

Тоже самое относится и к возвращаемым значениям. Ответ при успешном завершении — ok, после чего может располагаться запрошенная информация. Если при выполнении возникла ошибка, ответ будет в стиле описания errno (например, perm, noent, и так далее), с последующим более подробным пояснением.

### Глобальные команды:

`login` `дисплей`(`now` | `schedule`) `пользователь` `пароль` [параметры сеанса]

- Позволяет войти пользователю в систему с определённого дисплея. Если указан параметр `now`, все ранее запущенные и ещё активные сеансы закрываются. Параметры сеанса — строка в стиле printf для файла .dmrc. Для не перечисленных значений используются значения по умолчанию.

### Команды для дисплея:

`lock`

- Дисплей помечается как заблокированный. Если в этом состоянии X-сервер аварийно завершит работу, автоматический повторный вход в систему выполнен не будет, даже если он активирован.

`unlock`

- Имеет обратное значение по отношению к команде `lock`, и снова становиться возможным автоматически заходить в систему.

`suicide`

- Текущий сеанс принудительно закрывается. Автоматический вход в систему запрещён, но отложенная команда «login» разрешена.

### Команды для всех сокетов

`caps`

- Возвращает все возможности сокета:

  &tdm;

- идентифицирует &tdm;, на случай если другие менеджеры дисплеев тоже поддерживают данный протокол

list, lock, suicide, login

- Соответствующий список поддерживаемых команд

bootoptions

- Поддерживаются: команда `listbootoptions` и параметр `=` для команды `shutdown`

shutdown <список>

- Команда `shutdown` (выключить) разрешена и доступна для указанных пользователей (они перечисляются в списке через запятую). * — означает все зарегистрированные пользователи.

nuke <список>

- Ускоренное выключение доступно следующим пользователям, перечисленным в списке.

nuke

- Ускоренное выключение доступно всем

reserve <число>

- Зарезервированные дисплеи сконфигурированы, и некоторое их число уже доступно.

`list` [`all` | `alllocal`]

- Возвращает список открытых сеансов. По умолчанию возвращаются все активные сеансы. сеансы. Если определён параметр `alllocal`, все пассивные сеансы перечисляются, но исходящие удалённые сеансы не указываются.

  Каждая запись о сеансе представляет собой разделённый запятой набор:

  - Дисплей или имя консоли

  - имя локальной консоли (vt) или имя локального сеанса

  - Имя вошедшего пользователя, это поле пусто для пустых или пассивных сеансов и для исходящих удалённых сеансов.

  - Тип сеанса (<remote> для исходящих удалённых сеансов, пусто для пассивных сеансов).

  - Поле флагов:

    - `*` для дисплеев, принадлежащих опрашиваемому сокету.

    - `!` для сеансов, которые не могут быть закрыты через опрашиваемый сокет.

  Новые поля могут быть добавлены в будущем.

`reserve` [`задержка в секундах`]

- Запустить резервный экран входа в систему. Если никто не зарегистрировался и не вошёл в систему через определённое время, указанное в секундах (по умолчанию — одна минута), то дисплей удаляется. Когда сеанс на этом дисплее закрывается, то дисплей также удаляется.

  Разрешено только для сокетов локальных дисплеев и для глобальных сокетов.

`activate` (`vt`|`display`)

- Переключиться на определённый виртуальный терминал (VT). Виртуальный терминал может быть определён непосредственно (например, `vt3`) или с помощью использующего его дисплея (например, `:2`).

  Разрешено только для сокетов локальных дисплеев и для глобальных сокетов.

`listbootoptions`

- Список доступных загрузочных параметров.

`shutdown` (`reboot` | `halt`) [`=`bootchoice``] (`ask`|`trynow`|`forcenow`|`schedule`|`start (`-1`|`end (`force`|`forcemy`|`cancel)`)`)`)

- Послать запрос на выключение системы, или перезагрузку или на останов/выключение питания.

  Операционная система, загружаемая после перезагрузки, может быть определена из списка, возвращаемого командой `listbootoptions`

  Запросы на выключение с сокетов, соответствующих отдельным дисплеям, выполняются, когда текущие сеансы на них закрываются. После запроса может появиться диалоговое окно, спрашивающее подтверждение и/или аутентификацию.

  `start` — время, когда выключение будет произведено. Если перед числом будет знак плюс, то добавляется текущее время. Ноль — выключить немедленно.

  `end` — время, через которое выключение будет произведено, несмотря на то, что некоторые сеансы ещё не закрыты. Если перед числом будет знак плюс, то добавляется текущее время. -1 означает бесконечность. Если время истекло и сеансы не закрыты, то &tdm; выполнит одно из следующих действий:

  - `cancel` — отменить выключение

  - `force` — выключить несмотря ни на что

  - `forcemy` — выключить активные сеансы после предупреждения пользователей. Только для сокетов, запущенных для каждого дисплея.

  `start` и `end` задаются в секундах с начала &UNIX; эпохи.

  `trynow` синоним для `0 0 cancel`, `forcenow` синоним для `0 0 force` и `schedule` синоним для `0 -1`.

  `ask` — если этот параметр указан, то делается немедленная попытка выключить дисплей, и если сеанс активен, производиться соответствующий запрос пользователю.

`shutdown cancel` [`local`|`global`}

- Отменяет отложенное выключение. Глобальные сокеты отменяют только что полученный (ожидающий) запрос на выключение, тогда как сокеты дисплеев отменяют первый запрос в очереди (буферизованный).

`shutdown status`

- Выводит список с информацией о запросах выключения.

  Каждая строка — набор разделённых запятыми полей:

  - (global|local) — отложенный (ожидающий), или буферизованный запрос. local может быть возвращён только сокетом дисплея.

  - (halt|reboot)

  - начало работы

  - конец работы

  - ("ask"|"force"|"forcemy"|"cancel")

  - Идентификационный номер пользователя (UID), или -1 для глобального сокета.

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

  В будущем могут быть добавлены новые поля.

Существует два способа использовать сокеты:

- Подключиться к нему напрямую. Переменная окружения FifoDir должна быть экспортирована с именем $`DM_CONTROL`; имя дисплейного сокета определяется как $`DISPLAY`.

- С помощью команды `tdmctl` (например в сценарии командной строки). Наберите `tdmctl` `-h` чтобы узнать остальные параметры.

Далее пример bash сценария перезагрузиться в ОС FreeBSD:

    if tdmctl | grep -q shutdown; then
      IFS=$'\t'
      set -- `tdmctl listbootoptions`
      if [ "$1" = ok ]; then
            fbsd=$(echo "$2" | tr ' ' '\n' | sed -ne 's,\\s, ,g;/freebsd/I{p;q}')
            if [ -n "$fbsd" ]; then
              tdmctl shutdown reboot "=$fbsd" ask > /dev/null
            else
              echo "Загрузка FreeBSD невозможна."
            fi
      else
        echo "Недопустимый параметр загрузки."
      fi
    else
      echo "Невозможно перезагрузить систему."
    fi

## Дополнительные источники информации

Так как &tdm; основан на &xdm;, может оказаться полезным Руководство пользователя xdm. Для устранения неполадок X-сервера, прочтите страницы документации Man по X и startx. Ответы на вопросы, не рассмотренные в данном руководстве, может дать чтение исходного кода. &tdm; распространяется по лицензии &GNU;, поэтому его исходный код доступен всем желающим.

## Благодарности и лицензирование

&tdm; происходит от (и включает код) &xdm; © Keith Packard, MIT X Consortium.

Автор &tdm; 0.1 — &Matthias.Ettrich;. Автор версии для &kde; 2.0.х — &Steffen.Hansen;. Автор добавления новых свойств в &tdm; для &kde; 2.1.x и фундаментальных изменений версии для &kde; 2.2.х — &Oswald.Buddenhagen;.

Права на остальные части кода &tdm; принадлежат их авторам и имеют лицензию GNU GPL. &tdm; можно без ограничений изменять и распространять, при условии упоминания имён авторов.

Для &tdm; необходима библиотека &Qt;. Авторские права на неё принадлежат компании Troll Tech AS.

Документация

- Автор документации — &Steffen.Hansen; stefh@dit.ou.dk

- Gregor Zumstein zumstein@ssd.ethz.ch — дополнение документации. Последнее изменение внесено 9 августа 1998 г.

- Автор правки документации для &kde; 2 — &Neal.Crook; &Neal.Crook.mail;. Последнее обновление выполнено 6 августа 2000 г.

- Автор дополнения и исправления документации для &kde; 2.2 — &Oswald.Buddenhagen; &Oswald.Buddenhagen.mail;. Последнее обновление выполнено в августе 2001 г.

Авторские права на документацию принадлежат &Steffen.Hansen;, Gregor Zumstein, &Neal.Crook; и &Oswald.Buddenhagen;. Данный документ также включает значительные части страницы документации для &xdm;, авторские права на которую принадлежат Keith Packard.

&underFDL; &underGPL;

## Словарь

приглашение

Приглашение — диалоговое окно входа в систему, то есть часть &tdm;, с которой непосредственно работает пользователь.

энтропия

Энтропия системы — мера её непредсказуемости. Это понятие используется в алгоритмах генерации псевдослучайных чисел.