11.1. | Что такое X Window System? |
X Window System (обычно Для разных архитектур и операционных систем существует
множество реализаций этой системы. Реализацию кода для
серверной части называют | |
11.2. | Какие реализации X существуют для FreeBSD? |
Исторически складывалось так, что во FreeBSD в качестве используемой по умолчанию реализации X выступал пакет XFree86TM, который поддерживает The XFree86 Project, Inc. Данное программное обеспечение устанавливалось по умолчанию в версиях FreeBSD до 4.10 и 5.2. Хотя Xorg поддерживала в то время свою реализацию, в целом она позиционировалась как ссылочная платформа, от чего долгие годы значительно страдала. Однако в начале 2004 года несколько разработчиков XFree86
покинули проект из-за разногласий по поводу темпов внесения
изменений в код, будущего направления развития и личных конфликтов.
Теперь они передают свой код непосредственно в Xorg.
Одновременно с этим Xorg обновила своё дерево исходных текстов до
состояния, соответствующего последнему релизу XFree86TM
перед изменением лицензионного соглашения (XFree86
version 4.3.99.903), включила туда множество
изменений, ранее поддерживаемых отдельно, и выпустила этот набор
как X11R6.7.0. Существует отдельный,
но связанный с этим проект freedesktop.org
(для краткости С июля 2004 в FreeBSD-CURRENT в качестве реализации, используемой по умолчанию, XFree86TM была заменена на Xorg. С тех пор в качестве реализации X11 по умолчанию используется Xorg. Для получения более полной информации прочтите раздел о X11 Руководства FreeBSD. | |
11.3. | Всё же почему разделились два проекта X? |
Ответ на этот вопрос находится вне круга проблем, описываемых в FAQ. Заметим, что в Internet в архивах различных списков рассылки хранится объёмная переписка. Для изучения истории этого вопроса, пожалуйста, воспользуйтесь вашей любимой поисковой системой, а не задавайте вопросы в списках рассылки FreeBSD. Может статься, что только непосредственные участники событий будут знать доподлинно все произошедшее. | |
11.4. | Почему для установки по умолчанию во FreeBSD были выбраны порты Xorg? |
Разработчики Xorg заявляют, что их целями является более частый выпуск релизов и быстрое добавление новых функций. Если они смогут это осуществить, что их разработка будет весьма привлекательна. Кроме того, использование их программного обеспечение продолжает подпадать под условия стандартного для X лицензионного соглашения, тогда как XFree86TM пользуется несколько модифицированным её вариантом. | |
11.5. | Я хочу запустить X, как это сделать? |
Если вы планируете установить X на уже работающую систему, то вам необходимо использовать мета-порт x11/xorg, который построит и установит все необходимые компоненты, либо установить Xorg из пакетов FreeBSD.
Кроме того, установить Xorg можно из sysinstall(8), выбрав , затем , затем . После того, как Xorg был успешно установлен, следуйте указаниям в разделе Конфигурация X11 Руководства FreeBSD. | |
11.6. | Я попытался запустить X, но получил
сообщение KDENABIO failed (Operation not
permitted) после ввода команды
|
Вероятнее всего, в вашей системе установлен повышенный уровень
безопасности ( Так что вопрос сводится к тому, как вам это обойти, и у вас
здесь есть в основном два варианта: установить значение
Обратитесь к Вопрос: 11.12 для получения более полной информации о запуске xdm(1) во время загрузки. | |
11.7. | Почему моя мышь не работает с X? |
Если вы используете syscons(4) (стандартный драйвер
консоли), то можете настроить поддержку указателя мыши во всех
виртуальных экранах. Во избежание конфликтов с X, драйвер
syscons(4) поддерживает виртуальное устройство
Затем отредактируйте Section "InputDevice" Option "Protocol" "SysMouse" Option "Device" "/dev/sysmouse" ..... Начиная с версии Xorg 7.4 раздел
Option "AutoAddDevices" "false" Некоторые предпочитают использовать в X устройство
link sysmouse mouse Ссылка может быть создана путем перезапуска devfs(5)
с использованием следующей команды (из под пользователя
| |
11.8. | У моей мыши есть колёсико. Могу ли я его использовать при работе в X? |
Да. Вам нужно указать X, что используется 5-кнопочная мышь. Для
этого просто добавьте строчки Пример 11.1. Секция <<InputDevice>> для мыши с
колёсиком в файле конфигурации Xorg Section "InputDevice" Identifier "Mouse1" Driver "mouse" Option "Protocol" "auto" Option "Device" "/dev/sysmouse" Option "Buttons" "5" Option "ZAxisMapping" "4 5" EndSection Пример 11.2. Пример <<.emacs>> для простой прокрутки страницы
при помощи мыши с колёсиком (опционально) ;; wheel mouse (global-set-key [mouse-4] 'scroll-down) (global-set-key [mouse-5] 'scroll-up) | |
11.9. | Как использовать удалённые X-дисплеи? |
Из соображений обеспечения информационной безопасности открывать удалённые окна на машине по умолчанию запрещено. Для включения этой возможности просто запустите
X с аргументом
| |
11.10. | Что такое виртуальные консоли и как изменить их количество? |
Виртуальные консоли, упрощённо говоря, позволяют вам иметь несколько одновременных сеансов работы с той же самой машиной без установки какой бы то ни было сети или запуска X. При запуске системы после вывода сообщений этапа загрузки на консоль выдаётся приглашение на вход в систему. Вы можете ввести своё имя и пароль и начать работать (или играть!) на первой виртуальной консоли. В какой-то момент вы можете захотеть запустить ещё одну сеанс, скажем, чтобы заглянуть в документацию по программе, которую вы запустили или для для чтения электронной почты во время ожидания завершения передачи данных по FTP. Просто нажмите Alt+F2 (удерживая клавишу Alt, нажмите F2) и вы обнаружите приглашение, ждущее вас на второй <<виртуальной консоли>>! Когда захотите вернуться к первоначальному сеансу, нажмите Alt+F1. После установки по умолчанию во FreeBSD задействованы восемь виртуальных консолей, а комбинации клавиш Alt+F1, Alt+F2, Alt+F3 и так далее служат для переключения между ними. Чтобы увеличить количество консолей, отредактируйте файл
# Edit the existing entry for ttyv8 in /etc/ttys and change # "off" to "on". ttyv8 "/usr/libexec/getty Pc" cons25 on secure ttyv9 "/usr/libexec/getty Pc" cons25 on secure ttyva "/usr/libexec/getty Pc" cons25 on secure ttyvb "/usr/libexec/getty Pc" cons25 on secure Используйте из них столько, сколько посчитаете нужным. Чем
больше виртуальных терминалов у вас имеется, тем больше ресурсов
они используют; это может иметь значение, если у вас меньше чем
8 Мбайт ОЗУ. Вы можете сменить статус консолей с
Важно:Если вы хотите запустить X, вы должны оставить для него по крайней мере один неиспользуемый (или выключенный) виртуальный терминал. Таким образов, если вы хотите иметь приглашения login на всех двенадцати функциональных клавиши, то вам не повезло - вы можете это сделать только для одиннадцати из них, если хотите на этой же машине ещё запустить X-сервер. Самым простым способом убрать консоль является просто её выключение. Например, если вы запустили на всех 12 консолях виртуальные терминалы, как указано выше, и ещё хотите запустить X, то должны будете изменить параметры двенадцатого виртуального терминала с: ttyvb "/usr/libexec/getty Pc" cons25 on secure на: ttyvb "/usr/libexec/getty Pc" cons25 off secure Если на вашей клавиатуре только десять функциональных клавиш, то последние строки будут выглядеть так: ttyv9 "/usr/libexec/getty Pc" cons25 off secure ttyva "/usr/libexec/getty Pc" cons25 off secure ttyvb "/usr/libexec/getty Pc" cons25 off secure (Вы также можете просто их удалить.) Самым простым (и надёжным) способом активировать виртуальные
консоли является перезагрузка. Однако если вы вовсе не хотите
этого делать, просто остановите X Window System и выполните (как
пользователь
При этом требуется, чтобы вы полностью закрыли X Window, если
она была запущена, до запуска этой команды. Если вы это не
сделаете, ваша система может повиснуть или заблокироваться после
выполнения команды | |
11.11. | Как осуществляется доступ к виртуальным консолям из X? |
Используйте комбинацию клавиш
Ctrl+Alt+F После того, как вы оказались в текстовой консоли, можете использовать,
как обычно, комбинации
Alt+F Чтобы вернуться в сеанс работы X, вы должны переключиться
в виртуальную консоль, на которой запущена X Window. Если вы
запустили X из командной строки (например, при помощи команды
| |
11.12. | Как запустить XDM во время загрузки? |
Есть две философские школы, проповедующие различные методы
запуска xdm(1). Последователи одного течения запускают
Плюсом метода с использованием ttys(5) является
документирование того, на каком vty будет запущен X и то,
что ответственность за перезапуск X-сервера при завершении
сеанса работы лежит на процессе init(8). Метод с
использованием rc(8) позволяет просто прекратить работу
xdm командой Из rc(8) Если :0 local /usr/local/bin/X vt4 В вышеприведённом случае X-серверу указывается работать на
| |
11.13. | При запуске |
Если вы запускаете X с использованием
сценария startx, права на устройство
Это зависит от прав доступа, установленных для консоли по умолчанию. В многопользовательской системе вовсе не нужно, чтобы любой пользователь мог выводить информацию на системную консоль. Для пользователей, вошедших в систему через VTY, для решения этой проблемы существует файл fbtab(5). В общем, раскомментируйте строчку в файле
/dev/ttyv0 0600 /dev/console Этого будет достаточно для того, чтобы всякий, кто вошёл
в систему с терминала | |
11.14. | Раньше я запускал XFree86TM, работая как обычный пользователь, а
теперь при запуске выдается сообщение о том, что я должен быть
пользователем |
Все X-серверы должны запускаться пользователем
Очевидно, что запускать X-сервер, работая как
пользователь xdm представляет собой даемон, который обрабатывает входы в систему в графическом режиме. Обычно он запускается во время загрузки и отвечает за аутентификацию пользователей и запуск их сеансов; практически это графический аналог программ getty(8) и login(1). Более подробная информация о xdm находится в документации по XFree86TM и в соответствующем разделе FAQ.
| |
11.15. | Моя мышь PS/2 в X работает неправильно. |
Вполне может быть, что ваша мышь и её драйвер рассинхронизировались. В редких случаях драйвер может ошибочно обнаруживать проблемы с синхронизацией, и вы будете видеть такие сообщения ядра: psmintr: out of sync (xxxx != yyyy) и заметите, что мышь теперь работает неправильно. Если это случится, отмените проверку согласования, установив
значение флага для драйвера мыши PS/2 в boot: Затем в командной строке UserConfig наберите: UserConfig> | |
11.16. | Почему моя мышь PS/2 от MouseSystems не работает? |
Было несколько сообщений, что некоторые модели мышей PS/2 от MouseSystems работают только в режиме <<высокого разрешения>>. В других режимах курсор мыши постоянно прыгает в верхний левый угол экрана. Укажите флаг boot: Затем в командной строке UserConfig наберите: UserConfig> В предыдущем разделе описана возможная причина проблем с мышью. | |
11.17. | Как поменять местами кнопки мыши? |
Поместите команду | |
11.18. | Как установить экранную заставку и где такие заставки можно найти? |
Подробный ответ находится в разделе Загрузочные экранные заставки Руководства FreeBSD. | |
11.19. | Можно ли в X использовать клавиши Windows, которые есть на клавиатуре? |
Да. Всё, что вам нужно сделать, это с помощью xmodmap(1) задать функции, которые вы хотите к этим клавишам привязать. Положим, что все клавиатуры <<Windows>> стандартны и эти три клавиши имеют следующие клавиатурные коды:
Чтобы заставить левую клавишу Windows набирать запятую, попробуйте выполнить такую команду:
Чтобы увидеть результат, вам нужно будет перезапустить ваш оконный менеджер. Для того, чтобы переопределения клавиш
Windows выполнялось автоматически
каждый раз при запуске X, можно поместить вызов команд
xmodmap $HOME/.xmodmaprc Например, вы можете переопределить эти 3 клавиши так, чтобы они выполняли функции клавиш F13, F14 и F15 соответственно. Это позволит легко привязать их к полезным функциям в приложениях или вашем менеджере окон, как будет показано далее. Чтобы сделать это, поместите в файл
keycode 115 = F13 keycode 116 = F14 keycode 117 = F15 Если, к примеру, вы используете порт x11-wm/fvwm2, то можете переопределить клавиши таким образом, что F13 сворачивает в иконку (или восстанавливает предыдущие размеры) окна, на которое указывает курсор, F14 перемещает окно с курсором на передний план или, если оно уже впереди, возвращает обратно, а F15 вызывает главное меню приложения Workplace, даже если курсор находится не на рабочем столе, что бывает полезно, если нет ни одного видимого кусочка рабочего стола (к тому же логотип на клавише соответствует этой функции). Вот строки из Key F13 FTIWS A Iconify Key F14 FTIWS A RaiseLower Key F15 A A Menu Workplace Nop | |
11.20. | Как заставить работать аппаратное ускорение 3D-графики для OpenGL(R)? |
Наличие 3D-ускорения зависит от версии используемого вами сервера Xorg и типа графического адаптера. Если у вас адаптер nVidia, то вы можете использовать бинарные файлы драйверов для FreeBSD, установив один из следующих портов:
nVidia предоставляет подробную информацию о том, какие
адаптеры поддерживаются тем или иным драйвером. Эта
информация доступна непосредственно с их сайта: Для адаптеров Matrox G200/G400 вам следует попробовать порт x11-servers/mga_hal. Для ATI Rage 128 и Radeon посмотрите страницы Справочника ati(4), r128(4) и radeon(4). Для адаптеров 3dfx Voodoo 3, 4, 5, и Banshee есть порт x11-servers/driglide. |
Этот, и другие документы, могут быть скачаны с http://ftp.FreeBSD.org/pub/FreeBSD/doc/.
По вопросам, связанным с FreeBSD, прочитайте
документацию прежде чем писать в
<questions@FreeBSD.org>.
По вопросам, связанным с этой документацией, пишите в рассылку
<doc@FreeBSD.org>.