xinit(1) - это программа, запускающая X'ы. К ней есть некое
подобие интерфейса под названием startx(1), который
инициализирует один сеанс системы X Window. Вы могли и не слышать об xinit (возможно, вам это и не понадобится). Однако её
конфигурационный файл определяет, какие программы (в том числе и какой оконный менеджер)
будут запускаться при запуске X'ов. Сначала xinit проверяет ваш
домашний каталог на предмет наличия в нём файла .xinitrc. Если
файл найден, он будет запущен, в противном случае будет использован файл /var/X11R6/lib/xinit/xinitrc (используемый по умолчанию для всей
системы). Вот пример файла xinitrc:
#!/bin/sh
# $XConsortium: xinitrc.cpp,v 1.4 91/08/22 11:41:34 rws Exp $
userresources=$HOME/.Xresources
usermodmap=$HOME/.Xmodmap
sysresources=/usr/X11R6/lib/X11/xinit/.Xresources
sysmodmap=/usr/X11R6/lib/X11/xinit/.Xmodmap
# объединение значений по умолчанию и раскладок клавиатуры
if [ -f $sysresources ]; then
xrdb -merge $sysresources
fi
if [ -f $sysmodmap ]; then
xmodmap $sysmodmap
fi
if [ -f $userresources ]; then
xrdb -merge $userresources
fi
if [ -f $usermodmap ]; then
xmodmap $usermodmap
fi
# запуск некоторых полезных программ
twm &
xclock -geometry 50x50-1+1 &
xterm -geometry 80x50+494+51 &
xterm -geometry 80x20+494-0 &
exec xterm -geometry 80x66+0+0 -name login
|
Все блоки “if” предназначены для объединения различных конфигурационных
параметров из других файлов. Наиболее интересная часть находится в конце файла, в которой
описан запуск различных программ. Описанный сеанс начнётся с запуска оконного менеджера
twm(1), часов и трёх терминалов. Обратите внимание на команду
exec перед последним xterm. Она
заменяет запущенный в данный момент командный процессор (тот, что выполняет этот скрипт
xinitrc) на шелл xterm(1). Когда
пользователь закроет этот xterm, сеанс X будет завершён.
Чтобы настроить свой сценарий запуска X'ов, скопируйте стандартный файл /var/X11R6/lib/xinit/xinitrc в ~/.xinitrc
и отредактируйте его, заменив эти строки с программами на то, что пожелаете. У меня
окончание этого файла довольно простое:
# Запуск оконного менеджера:
exec startkde
|
Обратите внимание, что в /var/X11R6/lib/xinit есть несколько
различных файлов xinitrc.*, которые соответствуют различным
оконным менеджерам и графическим интерфейсам пользователя. Вы можете использовать любой
из них, который вам понравится.