Из командной строки
X-сервер без каких-либо X-клиентов можно запустить командой X (при-
мер 32.13).
Пример 32.13. Запуск X-сервера |
$ X :0.0 &
X.Org X Server 1.6.5 Release Date: 2009-10-11
X Protocol Version 11, Revision 0
Build Operating System: openSUSE SUSE LINUX
Current Operating System: Linux linux-0qp2 2.6.31.8-0.1-desktop #1 SMP PREEMPT 2009-12-15 23:55:40 +0100 i686
Build Date: 02 November 2009 12:05:39PM
Before reporting problems, check http://wiki.x.org to make sure that you have the latest version.
Markers: (--) probed, (**) from config file, (==) default setting, (++) from command line, (!!) notice, (II) informational,
(WW) warning, (EE) error, (NI) not implemented, (??) unknown. (==) Log file: "/var/log/Xorg.0.0.log", Time: Thu Jan 28 10:37:23 2010 (==) Using config file: "/etc/X11/xorg.conf"
(EE) Failed to load module "freetype" (module does not exist, 0)
Эта команда запустит X-сервер в фоновом режиме. Строка :0.0, указанная в качестве аргумента, значит следующее: данный сервер X является первым экземпляром X-серверов и использует первый экран для отображения.
К системе может быть подключено множество терминалов, а в каждом из них может быть несколько мониторов. Но даже в системе, обладающей един- ственным физическим экраном, можно запустить несколько X-серверов, если для этого имеется достаточное количество ресурсов в системе. Так, напри- мер, для запуска второго X-сервера в системе можно выполнить команду, показанную в примере 32.14.
Пример 32.14. Запуск второго X-сервера |
$ X :1.0 &
При этом оба сервера будут готовы принимать соединения по X-протоколу для отображения графики на экране (пример 32.15).
Пример 32.15. Открытые X-серверами порты |
$ netstat -tan
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 0.0.0.0:6000 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:6001 0.0.0.0:* LISTEN
Запущенные X-серверы используют свободные виртуальные терминалы. Так, например, если в системе используется шесть виртуальных терминалов, то первый виртуальный X-терминал будет доступен с помощью сочетания кла- виш <Ctrl>+<Alt>+<F7>, а второй — <Ctrl>+<Alt>+<F8>. Завершить работу X-сервера можно сочетанием клавиш <Ctrl>+<Alt>+<Backspace>. Обратите внимание на то, что первый X-сервер прослушивает порт TCP 6000, а вто- рой — 6001. Фактически, номер порта напрямую связан с номером экземпля- ра X-сервера.
X-клиент, который должен обслуживаться первым X-сервером, будет запу- щен, если указана опция -display :0.0 (пример 32.16).
Пример 32.16. Запуск X-клиента |
$ xterm -display :0.0 &
Клиент, который будет обслуживаться вторым сервером, можно запустить, указав после опции -display номер второго X-сервера (пример 32.17).
Пример 32.17. Запуск X-клиента, работающего со вторым X-сервером |
$ xeyes -display :1.0 &
Если X-сервер не должен прослушивать порт TCP, а использовал вместо это- го UNIX-сокеты для обмена информацией с клиентами, то его следует запус- тить, используя опцию -nolisten tcp (пример 32.18).
Пример 32.18. Запрет на открытие порта TCP |
$ X -nolisten tcp :0.0 &
Использование порта TCP для работы X-сервера не приветствуется с точки зрения безопасности системы и допустимо лишь в системах, где X-сервер и X-клиенты запускаются на различных компьютерах.
Запуск X-сервера без последующего автоматического запуска требуемых X-клиентов не удобен, поэтому разумно использовать программу startx — скрипт Shell, являющийся надстройкой над командой xinit. Программа xinit позволяет запустить X-сервер и эмулятор терминала xterm (пример 32.19).
Пример 32.19. Запуск X-сервера с помощью xinit |
$ xinit
Эта команда запустит X-сервер и эмулятор терминала — программу xterm.
Если в домашнем каталоге имеется файл .xinitrc, то команды для запуска X- клиентов, указанные в нем, будут выполнены вместо запуска программы xterm (пример 32.20).
Пример 32.20. Файл ~/.xinitrc |
xclock -g 50x50-0+0 & twm
В примере 32.20 после запуска X-сервера автоматически стартуют два клиен- та: программа xclock (отображает системное время) и примитивный менед- жер окон twm. Опция -g программы xclock (и многих других X-клиентов) указывает размер и положение окна программы на экране. Обратите внима- ние, что программа xclock запущена в фоновом режиме. В противном случае менеджер окон будет запущен лишь после завершения работы xclock.
Если файл ~/.xinitrc отсутствует, то по умолчанию запускается эмулятор терми- нала xterm. При запуске X-сервера программой xinit можно задать X-серверу требуемые опции. Для этого их прописывают в файле ~/.xserverrc (пример 32.21). В этом файле указывают имя программы X-сервера для его старта и опции.
Пример 32.21. Файл ~/.xserverrc |
exec X :0.0 -nolisten tcp
Если такая строка будет присутствовать в файле ~/.xserverrc, то команда
xinit запустит X-сервер в режиме без поддержки TCP-сетевых соединений.
В командной строке xinit можно задавать клиентское приложение для стар- та, а также указывать параметры запуска X-сервера (пример 32.22).
Пример 32.22. Передача параметров в командной строке xinit |
$ xinit icewm -- X :0.0 -nolisten tcp
В этом примере будет запущен X-сервер без поддержки соединений по про- токолу TCP, после чего будет запущен менеджер окон icewm.
Кроме команды xinit, запустить X-сервер позволяет также сценарий обо- лочки startx, являющийся надстройкой над xinit (пример 32.23).
Пример 32.23. Команда startx |
$ startx
В результате работы сценария startx команда xinit запустит X-сервер.
Особенностью сценария startx по сравнению с xinit является то, что он позволяет сделать общесистемные файлы xinitrc и xserverrc. В GNU/Linux эти файлы располагаются обычно в каталоге /etc/X11/xinit.
Дата добавления: 2015-06-12; просмотров: 1231;