Наши
Сайдбары
   
IRC-канал
Linuxportal.ru
   
Импорт новостей
 
Вход Быстрая регистрация На главную

Поиск:
 
   БИБЛИОТЕКА
     Другие статьи этого раздела:
 

    X-сервер
Другие разделы библиотеки:
   БИБЛИОТЕКА
     последние поступления:
 

Hardware
Перевод Serial-Programming-HOWTO
15.05.2006 | San АНДРЕЕВ
Перевод Linux Power Management Support
03.04.2004 | San АНДРЕЕВ
Варианты решения проблем со смещением геометрии монитора.
10.10.2003 | EsTaF
Multimedia
VideoCD для пингвинов
10.10.2003 | Buddha
Смотрим любимые фильмы с помощью MPlayer
23.07.2003 | Alexey Dmitriev
X-сервер
Включаем Bytecode Interpreter в пакете freetype в некоторых дистрибутивах
05.07.2006 | Alexey Dmitriev
НАСТРОЙКА СЕРВЕРА XDMCP ДЛЯ WINDOWS-КЛИЕНТОВ
09.09.2004 | Kotjara
Type1 и truetype шрифты в LaTeX.
03.05.2004 | geekkoo
Разное
Как самому написать концепцию информационной безопасности
22.03.2007 | Crion
Список рекомендуемой литературы
11.09.2006 | San АНДРЕЕВ
The Multi Router Traffic Grapher
02.06.2004 | Crion
Сеть
"Огненная стена" или строим файрвол на базе iptables
15.03.2005 | Alexey Dmitriev
Защищенная почтовая система
08.09.2004 | Crion
Postfix+Cyrus-SASL
18.12.2003 | geekkoo
Система
Написание драйверов под Linux: рекомендации, типичные ошибки и ловушки.
16.01.2007 | Mr.Nobody
Перевод Linux Daemon HOWTO
21.08.2006 | San АНДРЕЕВ
Усыпляем компьютер
11.01.2006 | San АНДРЕЕВ
   БИБЛИОТЕКА X-сервер    
Автор статьи:
Дата: 18.08.2003

Как поменять Display Manager?

1. Какие DM бывают?
В настоящий момент, лично я, видел только три DM. Это X Display Manager (xdm), Gnome Display Manager (gdm) и KDE Display Manager (kdm). Какой из перечисленных запускается на Вашем компьютере можно легко отличить по внешнему виду. Самый простой - это xdm, но в тоже время это стандартный (входящий в комплект XFreee) для X-ов DM. Более красивые и более функциональные - это gdm и kdm. Почитав документацию по соответствующему DM Вы можете узнать подробности о его возможностях и параметрах настройки. Какой из DM использовать и использовать ли его вообще - это дело вкуса.

2. С чего начать?
Первым делом имеет смысл, посмотреть, каким образом у Вас на компьютере происходит запуск DM. Для этого необходимо открыть файл /etc/inittab:

#
# inittab       This file describes how the INIT process should set up
#               the system in a certain run-level.
#
# Author:       Miquel van Smoorenburg, 
#               Modified for RHS Linux by Marc Ewing and Donnie Barnes
#

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

# System initialization.
si::sysinit:/etc/rc.d/rc.sysinit

# What to do in single-user mode.
~~:S:wait:/sbin/sulogin

l0:0:wait:/etc/rc.d/rc 0
l1:1:wait:/etc/rc.d/rc 1
l2:2:wait:/etc/rc.d/rc 2
l3:3:wait:/etc/rc.d/rc 3
l4:4:wait:/etc/rc.d/rc 4
l5:5:wait:/etc/rc.d/rc 5
l6:6:wait:/etc/rc.d/rc 6

# Things to run in every runlevel.
ud::once:/sbin/update

# Trap CTRL-ALT-DELETE
ca::ctrlaltdel:/sbin/shutdown -t3 -r now

# When our UPS tells us power has failed, assume we have a few minutes
# of power left.  Schedule a shutdown for 2 minutes from now.
# This does, of course, assume you have powerd installed and your
# UPS connected and working correctly.
pf::powerfail:/sbin/shutdown -f -h +2 "Power Failure; System Shutting Down"

# If power was restored before the shutdown kicked in, cancel it.
pr:12345:powerokwait:/sbin/shutdown -c "Power Restored; Shutdown Cancelled"


# Run gettys in standard runlevels
1:2345:respawn:/sbin/mingetty tty1
2:2345:respawn:/sbin/mingetty tty2
3:2345:respawn:/sbin/mingetty tty3
4:2345:respawn:/sbin/mingetty tty4
5:2345:respawn:/sbin/mingetty tty5
6:2345:respawn:/sbin/mingetty tty6

# Run xdm in runlevel 5
# xdm is now a separate service
x:5:respawn:/etc/X11/prefdm -nodaemon

Нас интересует последняя строка, в которой запускается процесс (в данном случае это скрипт /etc/X11/prefdm), предписанный для выполнения при переходе на 5 runlevel (более подробно о файле /etc/inittab смотреть в man inittab). Рассматривая данный случай (относится к RedHat дистрибуции), здесь запускается скрипт выбора Display Manager.
Этот скрипт испльзует в качестве параметра файл /etc/sysconfig/desktop, в котором указывается параметр DISPLAYMANAGER с возможными вариантами (KDE, KDE1, KDE2 - соответствует kdm, GNOME - соответствует gdm, и AnotherLevel - в этом случае будет запущен xdm). В том случае, если файла /etc/sysconfig/desktop нет, тогда будет
запущен первый обнаруженный на Вашем компьютере DM. Порядок поиска gdm, kdm, xdm. Если у Вас установлены все три DM, и нет файла /etc/sysconfig/desktop, то при переходе на 5 runlevel у Вас будет запущен gdm.

3. Вносим свои коррективы.
Стоит обратить внимание на то, что DM, которым Вы предполагаете пользоваться, может быть не установлен на Вашем компьютере. Поэтому имеет смысл, прежде чем ставить эксперименты проверить его наличие. Если все программы на Вашем компьютере установлены из RPM-пакетов, тогда можно воспользоваться возможностями RPM и проверить наличие необходимых пакетов. Для kdm должен быть установлен пакет kdebase, для gdm - пакет с одноименным названием, для xdm - пакет XFree86-xdm.
3.1. Если у Вас запускается скрипт выбора DM
Самым простым решением будет создать файл /etc/sysconfig/desktop и указать в нем нужный для Вас параметр. Например, я хочу чтобы у меня загружался kdm. В таком случае содержимое /etc/sysconfig/desktop будет выглядеть следующим образом:
DISPLAYMANAGER=KDE

Можно, так же, внести изменения в сам скрипт /etc/X11/prefdm изменив порядок поиска DM на такой, при котором необходимый Вам DM будет искаться первым. Для этого вносим изменения в секцию (в настоящий момент первым ищется gdm):
if [ -z "$preferred" ]; then
        if which gdm >/dev/null 2>&1; then
                preferred=gdm
        elif which xdm >/dev/null 2>&1; then
                preferred=xdm
        elif which kdm >/dev/null 2>&1; then
                preferred=kdm
        fi
fi

Пусть у нас будет запускаться kdm, тогда данный код будет выглядеть следующим образом:
if [ -z "$preferred" ]; then
        if which kdm >/dev/null 2>&1; then
                preferred=kdm
        elif which gdm >/dev/null 2>&1; then
                preferred=gdm
        elif which xdm >/dev/null 2>&1; then
                preferred=xdm
        fi
fi

3.2. Скрипт выбора не запускается
В этом случае строка из /etc/inittab будет иметь вид:
x:5:respawn:/etc/X11/xdm -nodaemon

Эта строка запускает xdm по умолчанию. Чтобы у Вас запускался другой DM Вы можете просто исправить эту строку соответствующим образом. Продолжая пример, приведенный выше, будем делать все для kdm:
x:5:respawn:/etc/X11/kdm -nodaemon

3.3. После изменений
После того, как Вы внесли изменения в конфигурационные файлы и сохранили внесенные поправки, возможно несколько вариантов, выполнив которые, Вы увидите перед собой, выбранный Вами DM.
3.3.1. На зависимо от того, в какие файлы Вы вносили изменения.
Вы можете осуществить переход с 5 runlevela на 3 и обратно, что делается командой:
# init 3; init 5

3.3.2. Изменения вносились только в файл /etc/inittab
Вам необходимо выполнить команду:
# init q

3.3.3. Изменения касаются только файлов DM
В этом случае будет достаточно выполнить команду:
# killall [xkg]dm

первая буква после команды kill, в названии процесса (т.е. возможны варианты xdm, kdm, gdm), зависит от того, какой в настоящий момент DM используется.
3.3.4.Предупреждение.
Выполнение всех вышеописанных команд приведет к завершению процессов, запущенных под управлением Х-сервера. Поэтому, прежде чем выполнять эти команды, рекомендуется сохранить все что необходимо, дабы не потерять данные.
3.4. Если у Вас дистрибутив Debian.
В дистрибутиве Debian используется вариант запуска DM, как стандартного сервиса. То есть, запустить (остановить, перезапустить), например, gdm можно командой:
# /etc/init.d/gdm [start | stop | restart]

Таким образом, настройка запуска нужного менеджера производится командой chkconfig. При желании, можно самому остановить один и запустить другой менеджер.

4. Авторство и все такое
Автор: Федотов Алексей aka Sloth
Email: sloth@email.ru
Дополнения:
XMan Email: _XMan_@mail.ru

Здоровая критика и полезные дополнения принимаются.



Все статьи раздела "X-сервер"

©"Linuxportal.Ru". Материалы сайта можно
использовать свободно при условии
сохранения этой свободы при дальнейшем
распространении, если явно не указано иное

Дизайн и программирование:

Поставьте
нашу кнопку:
Получить код кнопки
Linux Portal.ru ::: Линукс Портал.ру
Наш партнер: