Наши партнеры

UnixForum





Библиотека сайта rus-linux.net

На главную -> MyLDP -> Электронные книги по ОС Linux
Beyond Linux From Scratch. Version 2011-12-30
Назад 34. Дополнительные пакеты GNOME. Утилиты Вперед

Пакет GDM-2.30.2

Знакомимся с пакетом GDM

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

Известно, что пакет правильно собирается и работает на платформе LFS-6.7.

Информация о пакете

Дополнительные загрузки

Зависимости пакета GDM

Обязательные

GNOME Panel-2.30.2 и Xorg Libraries

Рекомендуемые

ConsoleKit-0.4.1 (требуется для реализации функций Shutdown/Restart) и polkit-gnome-0.94

Необязательные

Check, UPower-0.9.1, libxklavier-5.0 и TCP Wrappers-7.6

Замечания для пользователей: http://wiki.linuxfromscratch.org/blfs/wiki/gdm

Установка пакета GDM

Рекомендуется иметь специального пользователя и специальную группу, предназначенные для того, чтобы управлять демоном gdm-binary после его запуска. Выполните в роли пользователя root следующие команды:

groupadd -fg 21 gdm &&
useradd -c "GDM Daemon Owner" -d /var/lib/gdm -u 21 \
    -g gdm -s /bin/false gdm  || [ $? == 9 ]

Установите пакет GDM с помощью следующих команд, выполняемых в роли непривилегированного пользователя:

patch -Np1 -i ../gdm-2.30.2-fixes-1.patch &&
./configure --prefix=$(pkg-config --variable=prefix ORBit-2.0) \
            --sysconfdir=/etc/gnome/2.30.2 \
            --localstatedir=/var \
            --libexecdir=$(pkg-config \
                --variable=prefix ORBit-2.0)/lib/gdm \
            --with-pam-prefix=/etc &&
make

В этом пакете набор тестов отсутствует.

Теперь в роли пользователя root выполните:

make install &&
ln -fsv $(pkg-config --variable=prefix \
    ORBit-2.0)/lib/gnome-settings-daemon-2.0/gnome-settings-daemon $(pkg-config \
    --variable=prefix ORBit-2.0)/lib/gdm &&
ln -fsv /usr/lib/ConsoleKit/ck-get-x11-display-device $(pkg-config \
    --variable=prefix ORBit-2.0)/lib/gdm &&
ln -fsv /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1 $(pkg-config \
    --variable=prefix ORBit-2.0)/lib/gdm

Пояснение команд

--prefix=$(pkg-config --variable=prefix ORBit-2.0): Установка префикса с помощью этого параметра, а не с помощью $GNOME_PREFIX будет гарантировать, что префикс будет установлен в соответствие со средой окружения и пакет будет установлен в нужном месте.

--sysconfdir=/etc/gnome/2.30.2: Этот параметр указывает, что конфигурационные файлы будут установлены в директорий /etc/gnome/2.30.2, а не в директорий .$GNOME_PREFIX/etc. Кроме того (если это требуется), этот параметр гарантирует, что будет правильно обновлена база данных GConf-2.

--localstatedir=/var: Эта команда указывает размещать файлы в директории /var, а не в директории $GNOME_PREFIX/var.

--libexecdir=$(pkg-config --variable=prefix ORBit-2.0)/lib/gdm: Этот параметр указывает, что внутренние программы, поддерживающие работу GDM, будут установлены в более правильный директорий $GNOME_PREFIX/lib/gdm, а не в директорий $GNOME_PREFIX/libexec.

--with-pam-prefix=/etc: Эта команда указывает размещать конфигурационные файлы PAM в директории /etc/pam.d, а не в директории /etc/gnome/2.30.2.

Конфигурирование пакета GDM

Конфигурационные файлы

/etc/gnome/2.30.2/gdm/custom.conf

Подробнее о конфигурировании

Демон GDM конфигурируется с использованиема файла /etc/gnome/2.30.2/gdm/custom.conf. По умолчанию значения, хранимые в GConf, находятся в файле gdm.schemas. Пользователям рекомендуется изменять файл /etc/gnome/2.30.2/gdm/custom.conf, т.к. файл schemas может быть заменен в случае, когда пользователь обновляет свою систему с целью установить более новую версию GDM.

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

cat > /etc/pam.d/gdm << "EOF"
auth        required    pam_unix.so
auth        requisite   pam_nologin.so
account     required    pam_unix.so
password    required    pam_unix.so
session     required    pam_unix.so

EOF
cat > /etc/pam.d/gdm-autologin << "EOF"
auth        required    pam_env.so
auth        requisite   pam_nologin.so
auth        required    pam_permit.so
account     required    pam_unix.so
password    required    pam_unix.so
session     required    pam_unix.so

EOF

Если у вас установлен пакет D-BUS и вы хотите запускать сессию демона D-BUS одновременно с запуском среды рабочего стола GNOME с помощью команды gdm, вам необходимо создать новый файл Xsession. В роли пользователя root создайте этот файл с помощью следующих команд.

cat > $GNOME_PREFIX/share/xsessions/gnome-dbus.desktop <<"EOF"
[Desktop Entry]
Encoding=UTF-8
Name=GNOME with D-BUS
Comment=GNOME Desktop with D-BUS support
Exec=dbus-launch --exit-with-session gnome-session
TryExec=/usr/bin/dbus-launch
Icon=
Type=Application

EOF
chmod -v 644 $GNOME_PREFIX/share/xsessions/gnome-dbus.desktop

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

Замечание

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

Важно

Если во время установки gdm общесистемный демон D-BUS работал, то не забудьте остановить и снова запустить демон D-BUS прежде, чем вы запустите gdm.

Работу команды gdm можно проверить, выполнив ее пользователем в роли root. Используйте команду gdm-stop для того, чтобы остановить менеджер дисплея.

Загрузочный скрипт

Чтобы можно было во время загрузки системы запускать графический экран входа в систему (экран login), установите скрипт начальной загрузки /etc/rc.d/init.d/gdm, который находится в пакете blfs-bootscripts-20111226. Если в вашей переменной окружения GNOME_PREFIX находится значение, не совпадающее с /usr или с /opt/gnome-2.30.2, вам необходимо изменить инструкцию PATH, имеющуюся в скрипте, с тем, чтобы указать путь, где у вас установлен GNOME.

make install-gdm

Теперь отредактируйте файл /etc/inittab с помощью следующих команд:

sed -i 's/id:3:initdefault:/id:5:initdefault:/' \
    /etc/inittab

Описание пакета

Установленные программы: Default, Default.sample, Default, Default, Xsession, gdm, gdm-screenshot, gdmflexiserver, gdm-crash-logger, gdm-factory-slave, gdm-host-chooser, gdm-product-slave, gdm-session-worker, gdm-simple-chooser, gdm-simple-greeter, gdm-simple-slave, gdm-user-switch-applet, gdm-xdmcp-chooser-slave, gdm, gdm-binary, gdm-restart, gdm-safe-restart и gdm-stop

Установленные библиотеки: Нет

Установленные директории: /etc/gnome/2.30.2/gdm/{Init,PostLogin,PostSession,PreSession}, $GNOME_PREFIX/{lib/gdm,share/{gnome/help/gdm/*,omf/gdm, pixmaps/faces}}, /var/{cache/gdm,gdm,lib/gdm/.gconf.mandatory,log/gdm, run/gdm/greeter}

Краткое описание

gdmflexiserver

специальный механизм flexi, позволяющий в новой виртуальной консоли запускать по требованию сессию GDM

gdm-screenshot

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

gdm

скрипт-оболочка для выполнение двоичного модуля GDM, который является конфигурируемым в GNOME запрос на регистрацию в системе

gdm-binary

запрос на регистрацию в системе, используемый в GNOME

gdm-restart

посылает демону GDM сигнал HUP для перезапуска демона. Используется после редактирования конфигурационного файла

gdm-safe-restart

посылает демону GDM сигнал USR1 для перезапуска демона. Используется после редактирования конфигурационного файла

gdm-stop

посылает демону GDM сигнал TERM для остановки демона. Используется после редактирования конфигурационного файла

Перевод сделан с варианта оригинала, датированного 2011-06-08 12:16:49 +0000


Предыдущий раздел: Оглавление Следующий раздел:
Пакет GConf Editor-2.30.0   Пакет gedit-2.30.3