Чтение онлайн

на главную

Жанры

Linux для пользователя

Костромин Виктор Алексеевич

Шрифт:

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

Вот несколько примеров командной строки вызова программы xinit.

[user]$ xinit

Этой командой будет запущен сервер, на который указывает ссылка (линк) X, и выполнен пользовательский скрипт.xinitrc, если таковой существует, а

иначе просто запущен xterm.

[user]$ xinit -- /usr/X11R6/bin/Xqdss:1

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

[user]$ xinit -geometry =80x65+10+10 -fn 8x13 -j -fg white -bg navy

По этой команде будет запущен сервер, на который указывает ссылка X, и запускаемой по умолчанию команде xterm будут переданы аргументы, перечисленные в командной строке. Скрипт .xinitrc будет проигнорирован.

[user]$ xinit -e widgets -- .Xsun -l -c

В этом случае для запуска сервера используется команда.Xsun -l -c, а запускаемому по умолчанию программе-клиенту xterm будет переданы аргументы -e widgets.

Поскольку пользователю-новичку обычно не хватает квалификации для создания собственного варианта скрипта.xinitrc, администраторы сайтов могут помочь им в вызове графического интерфейса, создав общедоступный скрипт, выполняющий эту функцию. Такие скрипты обычно называются x11, xstart, или startx и являются удобным способом создания простого интерфейса для пользователей-новичков. Вот пример простейшего скрипта такого вида:

#!/bin/sh

xinit /usr/local/lib/site.xinitrc -- /usr/X11R6/bin/X bc

При инсталляции стандартной версии Red Hat Linux создается более сложный вариант скрипта startx, который расположен в каталоге /usr/X11/bin (вы можете его просмотреть). Для него существует и man-страница, в которой говорится, что этот скрипт создается просто как образец для администраторов сайтов, и предназначен для создания собственных вариантов такого скрипта.

Если просмотреть стандартный вариант скрипта startx, мы увидим, что практически он сводится к выполнению всего-навсего трех команд:

xauth add $display . $mcookie

xauth add `hostname -f`$display . $mcookie

xinit $clientargs -- $display $serverargs

То есть, в конечном итоге, startx вызывает уже рассмотренную нами команду xinit, только предварительно формирует нужные значения аргументов командной строки для нее. Первый аргумент - имя файла xinitrc, причем если в домашнем каталоге пользователя есть файл.xinitrc, то берется он (с указанием пути), а если в домашнем каталоге нет такого файла, то берется общесистемный файл /etc/X11/xinit/xinitrc, т. е. "clientargs" = "/etc/X11/xinit/xinitrc".

Аналогично формируется значение переменной 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

Поделиться:
Популярные книги

Купеческая дочь замуж не желает

Шах Ольга
Фантастика:
фэнтези
6.89
рейтинг книги
Купеческая дочь замуж не желает

Последняя Арена 2

Греков Сергей
2. Последняя Арена
Фантастика:
рпг
постапокалипсис
6.00
рейтинг книги
Последняя Арена 2

Системный Нуб 2

Тактарин Ринат
2. Ловец душ
Фантастика:
боевая фантастика
попаданцы
рпг
5.00
рейтинг книги
Системный Нуб 2

Ледяное проклятье

Михайлов Дем Алексеевич
4. Изгой
Фантастика:
фэнтези
9.20
рейтинг книги
Ледяное проклятье

Путь Шамана. Шаг 5: Шахматы Кармадонта

Маханенко Василий Михайлович
5. Мир Барлионы
Фантастика:
фэнтези
рпг
попаданцы
9.34
рейтинг книги
Путь Шамана. Шаг 5: Шахматы Кармадонта

Инферно

Кретов Владимир Владимирович
2. Легенда
Фантастика:
фэнтези
8.57
рейтинг книги
Инферно

На границе империй. Том 9. Часть 2

INDIGO
15. Фортуна дама переменчивая
Фантастика:
космическая фантастика
попаданцы
5.00
рейтинг книги
На границе империй. Том 9. Часть 2

Разведчик. Заброшенный в 43-й

Корчевский Юрий Григорьевич
Героическая фантастика
Фантастика:
боевая фантастика
попаданцы
альтернативная история
5.93
рейтинг книги
Разведчик. Заброшенный в 43-й

Хозяйка старой усадьбы

Скор Элен
Любовные романы:
любовно-фантастические романы
8.07
рейтинг книги
Хозяйка старой усадьбы

Кровь, золото и помидоры

Распопов Дмитрий Викторович
4. Венецианский купец
Фантастика:
альтернативная история
5.40
рейтинг книги
Кровь, золото и помидоры

Магия чистых душ

Шах Ольга
Любовные романы:
любовно-фантастические романы
5.40
рейтинг книги
Магия чистых душ

Кодекс Охотника. Книга XVIII

Винокуров Юрий
18. Кодекс Охотника
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Кодекс Охотника. Книга XVIII

Сумеречный стрелок

Карелин Сергей Витальевич
1. Сумеречный стрелок
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Сумеречный стрелок

Здравствуй, 1985-й

Иванов Дмитрий
2. Девяностые
Фантастика:
альтернативная история
5.25
рейтинг книги
Здравствуй, 1985-й