Выбрать главу

Аналогично формируется значение переменной serverargs: если существует файл.xserverrc в домашнем каталоге пользователя, то переменная serverargs будет указывать на него. Если такого файла нет, то serverargs укажет на /etc/X11/xinit/xserverrc. Переменной display присваивается значение: 0. Далее в скрипте startx производится анализ аргументов, которые были заданы в командной строке при его вызове (эту часть мы пока не будем детально разбирать, поскольку для начала будем вызывать скрипт без параметров) и, наконец, в конец строки вызова xinit добавляется -auth $HOME/.Xauthority. Таким образом, сразу после установки системы (пока пользователь не создал файлов .xinitrc и .xserverrc в своем домашнем каталоге) будет вызываться в следующем виде:

xinit /etc/X11/xinit/xinitrc -- :0 /etc/X11/xinit/xserverrc -auth $HOME/.Xauthority

Команды xauth и опция -auth $HOME/.Xauthority, передаваемая X-серверу, служат для авторизации пользователя, запускающего графический режим. Механизмы авторизации нас пока не интересуют, так что рассматривать эту часть не будем (если интересно, см. интерактивное руководство man с параметром Xsecurity).

7.5. Выбор и настройка менеджера окон

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

#!/bin/sh

# $HOME/.xinitrc

usermodmap=$HOME/.Xmodmap

xmodmap $usermodmap

xset s noblank # отключаем хранитель экрана

xset s 300 2 # запуск screensaver-а через 5 мин.

xset m 10 5 # установка ускорения мыши

rxvt -cr green -ls -bg black -fg white -fn 7x14 \ -geometry 80x30+57+0 &

if ["$1" = ""]; then WINMGR=wmaker # по умолчанию WINMGR=wmaker

else WINMGR=$1 fi

$WINMGR

Хотя это и не обязательно, можно сделать этот файл исполняемым с помощью команды

[user]$ chmod +x .xinitrc.

Этот вариант .xinitrc позволяет вам выбрать менеджер окон, попробуйте, например:

[user]$ startx startkde

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

#!/bin/sh

. /usr/local/lib/site.xinitrc

7.6. Графическая среда KDE

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

Однако имеет смысл вначале просмотреть возможности одной из разработанных в последние годы интегрированных графических сред. В английской терминологии часто используют сокращение GUI - Grafical User Interface, т. е. графический интерфейс пользователя. Будем его использовать в качестве сокращения, причем без перевода, именно как GUI. GUI представляет собой уже подобранную и проверенную совокупность программ для работы в графическом режиме, включающую в себя и менеджер окон и набор других программ, обладающих единообразным интерфейсом. Пожалуй, можно сказать, что именно единообразие интерфейса является ключевым моментом, определяющим преимущества использования GUI вместо создания собственной среды.

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

В гл. 15 я попытаюсь ближе познакомить вас с графической средой KDE. Здесь же я хочу рассказать только о том, как добиться, чтобы оболочка KDE запускалась у вас по команде startx. После инсталляции некоторых дистрибутивов (например, Black Cat Linux версии 6.02) по этой команде по умолчанию запускается GNOME. Справиться с этой проблемой очень просто. Если вы внимательно прочитали предыдущий подраздел, то знаете, что startx просто вызывает команду xinit с нужными параметрами, одним из которых является файл /etc/X11/xinit/xinitrc (если подобного файла нет в вашем домашнем каталоге). А в файле /etc/X11/xinit/xinitrc производится вызов либо файла Xclients из домашнего каталога пользователя, либо общесистемного файла /etc/X11/xinit/Xclients: