Неплохая подборка статей лежит здесь. Не все актуально, но дает базовые понятия и представление намного лучше, чем может дать любое faq.
Вот это FAQ по видеокартам от NVidia и статьи по настройке видеокарт ATI под Linux возможно сэкономят вам не один час времени.
Началось это потому, что в /tmp лежит lock-файл сервера шрифтов. Решение: почистить /tmp и перезапустить фонтсервер (например, service xfs restart
).
Если вы не планируете раздавать шрифты по сети на бездисковые рабочие станции, то сервер шрифтов вам скорее всего не нужен.
Поэтому уберем его. Для этого берем и в вашем конфигурационном файле X-сервера (/etc/X11/xorg.conf или /etc/X11/XF86Config, /usr/X11R6/lib/X11/XF86Config-4) прописываем в разделе "Files" путь для каждой папки со шрифтами (FontPath).
При этом пути с русскими шрифтам помещаем выше, чем с другими.
Упоминание unix/:7100 убираем.
Далее ищем, где у нас запускается сервер шрифтов (xfs). Для RedHat'топодобных дистрибутивов запуск производится демоном xfs.
Делаете так: от рута
root@localhost# service xfs stopЗатем заходим в /etc/rc.d/rc.x, где x - номер инита, и удаляем все упоминания вида S??xfs (или переименовываем в K??xfs). Чтобы так не напрягаться, в redhat существует команда chkconfig.
root@localhost# chkconfig --del xfs
Проверьте у себя в файле конфигурации x-сервера (/etc/XF86Config
или /etc/Xorg
) наличие следующих строчек в Section "Module":
Load "extmod" SubSection "extmod" Option "omit xfree86-dga" EndSubSection
Если их нет, вставьте и попробуйте запустить еще раз. Все должно работать.
В современных дистрибутивах обычно более-менее правильные настройки доступны из коробки. В файле настроек (для xorg - /etc/X11/xorg.conf, для XFree86 - /etc/X11/XF86Config или /usr/X11R6/lib/X11/XF86Config-4) нужно указать настройки своей клавиатуры. В секции настроек клавиатуры есть отличия. Настройки XFree86 версий ниже 4.3 отличаются от XFree версий 4.3 и 4.4 и xorg. Версию XFree86 можно узнать, выполнив XFree86 -version
.
Для примера возьмем переключение по Ctrl+Shift двух языков (en, rus) с включением scroll lock на русской раскладке:
XF86Config: Section "InputDevice" Identifier "Keyboard0" Driver "keyboard" Option "XkbRules" "xfree86" Option "XkbModel" "pc104" Option "XkbLayout" "ru(winkeys)" Option "Autorepeat" "250 30" Option "XkbOptions" "grp:ctrl_shift_toggle,grp_led:scroll" EndSection
Для XFree86 версий 4.3.0 и выше секция параметров клавиатуры выглядит так:
XF86Config: Section "InputDevice" Identifier "Keyboard0" Driver "keyboard" Option "XkbRules" "xfree86" Option "XkbModel" "pc104" Option "XkbLayout" "us,ru" Option "XkbOptions" "grp:ctrl_shift_toggle,grp_led:scroll" EndSection
Т.е. изменился формат параметра "XkbLayout". Теперь через запятую можно перечислять сколько угодно раскладок. Если вместо .ru написать winkeys - получим раскладку a-la MS Windows.
Для xorg секция параметров клавиатуры выглядит так:
Section "InputDevice" Identifier "Keyboard0" Driver "kbd" Option "XkbModel" "pc105" Option "XkbLayout" "us,ru(winkeys)" Option "XkbOptions" "grp:ctrl_shift_toggle,grp_led:scroll" EndSection
Т.е. изменилось название драйвера клавиатуры.
Теперь непосредственно рассмотрим переключатель. Во всех примерах по умолчанию стоит английский. Переключатель описывается в последней строке.
Для того, чтобы переключаться по ctrl+shift указывается параметр ctrl_shift_toggle, по alt+shift - параметр alt_shift_toggle.
Значение grp_led:scroll говорит о том, что после переключения будет загораться индикатор scroll lock.
Чтобы переключаться через Menu-key (такая клавиша на многих "Windows98" клавиатурах, слева от правого Ctrl), напишите:
Option "XkbOptions" "grp:menu_toggle,grp_led:caps"
Еще пара интересных примеров.
Для X 4.2.х настройки раскладки выглядят так:
XF86Config: Section "InputDevice" Option "XkbRules" "xfree86" Option "XkbModel" "microsoft" Option "XkbLayout" "ru" Option "XkbVariant" "winkeys" Option "XkbOptions" "grp:ctrl_shift_toggle,grp_led:scroll" EndSection
Аналогичные для XFree 4.3 будут выглядеть так:
XF86Config: Section "InputDevice" Option "XkbRules" "xfree86" Option "XkbModel" "microsoft" Option "XkbLayout" "us,ru" Option "XkbVariant" ",winkeys" Option "XkbOptions" "grp:ctrl_shift_toggle,grp_led:scroll" EndSection
В этом примере обратите внимание на запятую перед winkeys, это важно. Многие забывают ее поставить и как следствие, X-сервер функционирует неверно.
Пример с переключением трех языков (взято с http://lafox.net/docs/MDKman2/MDKman.html/ch02s02.html):
XF86Config: Section "InputDevice" Identifier "Keyboard1" Driver "Keyboard" Option "XkbModel" "pc105" #тут оставить свое Option "XkbLayout" "us,ru(winkeys),ua(winkeys)" #для 3-х языков (eng,rus,ukr) #Option "XkbLayout" "us,ru(winkeys)" #для 2-х языков (eng,rus) Option "XkbOptions" "grp:ctrl_shift_toggle,grp_led:scroll" #индикатор ScrollLock EndSection
Аналогично настройки прописываются для xorg, меняется лишь название драйвера клавиатуры (см. выше). Для XFree86 версий 4.2.х и ниже для переключения на три и более языков требуется установить и настроить xxkb (см. ниже).
После внесения изменений X-сервер нужно перезапустить.
Общее замечание. Для того, чтобы все это работало должна быть верно настроена локаль.
Замечание пользователям KDE. В Центре управления KDE имеется секция управления раскладками клавиатуры - Центр Управления -> Периферия -> Региональные стандарты -> Раскладки клавиатуры (Control Center -> Regional & Accessibility -> Keyboard Layout). Для использования настроек X-сервера галочку "Включить раскладки клавиатуры" (Enable keyboard layouts) следует выключить. Или использовать возможности KDE и убрать поддержку нескольких языков в настройках X-сервера.
Для более гибкой настройки можно использовать xxkb ( http://netadmin1.ic.tsu.ru/other/xxkb/, http://www.sourceforge.net/projects/xxkb, http://gnome.org.ru/xxkb.shtml). xxkb имеет достаточно богатые настройки по управлению раскладками и, в частности, настройки совместимости со средой - он может "висеть" на каждом (поддерживаются исключения) окне или только на активном в виде переключателя в указанном месте, может находится в трее KDE и Gnome (для этого нужно наложить патч - http://gnome.org.ru/xxkb.shtml), а может быть и dock-app'ом для WMaker'а.
Кстати, последние версии xxkb поддерживают трей и без патча, правда иконка в трее появляется из главного окна, которая слишком большая. Вместо файлов en48.xpm и ru.48.xpm нужно записать файлы с иконками поменьше, в качестве временной меры можно заменить их на en15.xpm и ru15.xpm.
В среде Gnome ниже версии 2.6 вместо xxkb можно использовать ( GSwitchIt), он несколько богаче функциональностью. Начиная с версии 2.6 gswitchit включен в состав Gnome!
В среде KDE вместо xxkb можно использовать kkbswitch.
Благодарим ответы saper, svu и неизвестного anonimous'а.
Нужно прописать в конфигурационном файле X-сервера нечто такое:
/etc/X11/XF86Config (/etc/X11/xorg.conf): Section "Monitor" Identifier "My Monitor" HorizSync 31.5 - 79.0 VertRefresh 50-90 EndSection
HorizSync и VertRefresh нужно взять из книжки к монитору.
Если это способ по каким-либо причинам не устраивает, можно вычислить нужную modeline и прописать ее.
Узнать нужную modeline можно с помошью стандартной утилиты gtf, KDE'шной kvideogen, videogen ( http://www.dynaweb.hu/opensource/videogen), и прочих. Или on-line калькулятора - http://koala.ilog.fr/cgi-bin/nph-colas-modelines
Например:
user@linux# gtf 1024 768 85
выдаст
# 1024x768 @ 100.00 Hz (GTF) hsync: 81.40 kHz; pclk: 113.31 MHz Modeline "1024x768_100.00" 113.31 1024 1096 1208 1392 768 769 772 814 -HSync +Vsync
Полученную строчку нужно прописать в XF86Config (xorg.conf) в раздел Monitor, чтобы получилось примерно так:
Section "Monitor" Identifier "Monitor0" VendorName "Monitor Vendor" ModelName "CTX5378" DisplaySize 330 250 HorizSync 30.0 - 72.0 VertRefresh 50.0 - 130.0 ModeLine "1152x864" 108.0 1152 1200 1328 1528 864 865 868 904 +hsync +vsync ModeLine "1024x768" 94.5 1024 1076 1172 1372 768 769 772 812 +hsync +vsync ModeLine "800x600" 56.3 800 832 896 1032 600 601 604 619 +hsync +vsync ModeLine "640x480" 36.0 640 712 768 808 480 485 488 525 -hsync -vsync ModeLine "400x300" 28.1 400 412 444 508 300 304 306 327 +hsync +vsync doublescan ModeLine "320x200" 15.8 320 360 392 396 200 204 206 222 -hsync +vsync doublescan Modeline "1024x768_100.00" 113.31 1024 1096 1208 1392 768 769 772 814 -HSync +Vsync Option "dpms" EndSection
После перезапуска X-сервера можно провести тонкую настройку (чтобы края не вылезали и т.п.) программой xvidtune - заходим в консоль, делаем xvidtune, когда нам все понравится, делаем apply и получаем в консоли исправленную строчку для modline. Ее записываем вместо первоначальной.
Нигде. Если вы не в курсе, в "драйверах для монитора" MS Windows обычно пишутся его рабочие частоты (которые современные мониторы и так отдают операционной системе) иногда рабочую температуру цвета, цветовые профили.
Кстати, если вы думаете, что у вас нельзя поставить 100Гц вместо 85Гц из-за того, что у вас отсутствуют данные драйверы, то вы ошибаетесь. Виноват драйвер видеокарты (например, такое наблюдается на картах S3).
Для начала определимся. Есть старая схема работы со шрифтами и новая. Основные графические тулкиты, такие как QT версий 3.0.x и выше, а также GTK2 работают по новой схеме. Тем не менее еще полно приложений, основанных на gtk1, motif и т.п., работающие по старой.
Итак, мы хотим красивые ttf-шрифты. Отлично. Скачаем
отсюда или
отсюда шрифты Microsoft. Ставим их. Пользователи Suse могут
сделать это через YAST. Лучше брать со второй ссылки. Тогда не придется их распаковывать и формировать в каталоге файлы fonts.dir и fonts.scale (на всякий случай, команда ttmkfdir -o fonts.dir
, а fonts.scale - это копия fonts.dir).
Далее открываем файл конфигурации X-сервера (/etc/X11/xorg.conf или /etc/X11/XF86Config) и прописываем каталог с нашими шрифтами. Потом прописываем со шрифтами Type1, которые содержат русские глифы. В моем случае весь раздел выглядит так:
Section "Files" RgbPath "/usr/X11R6/lib/X11/rgb" ModulePath "/usr/X11R6/lib/modules" FontPath "/usr/share/fonts/default/TTF" FontPath "/usr/X11R6/lib/X11/fonts/cyrillic/" FontPath "/usr/X11R6/lib/X11/fonts/75dpi/" FontPath "/usr/X11R6/lib/X11/fonts/100dpi/" FontPath "/usr/X11R6/lib/X11/fonts/misc/" FontPath "/usr/X11R6/lib/X11/fonts/Type1/" EndSection
Далее, если у нас xorg, а не XFree86, отменяем загрузку модуля type1, потому что его функции теперь выполняет модуль freetype:
# Load "type1"и сохранив наш файл переходим к настройке xft2, известного больше как fontconfig.
Смотрим, что у нас лежит в папке /etc/fonts. По идее там должно быть три файла: fonts.conf, fonts.dtd и local.conf.
Заходим в наш local.conf и прописываем наши добавленные папки со шрифтами. Весь файл будет выглядеть для моего случая так:
<?xml version="1.0"?> <!DOCTYPE fontconfig SYSTEM "fonts.dtd"> <!-- /etc/fonts/local.conf file for local customizations --> <fontconfig> <!-- Enable sub-pixel rendering <match target="font"> <test qual="all" name="rgba"> <const>unknown</const> </test> <edit name="rgba" mode="assign"><const>rgb</const></edit> </match> --> <dir>/usr/share/fonts/default/TTF></dir> <dir>/usr/java/j2re1.4.0_01/lib/fonts</dir> </fontconfig>
Отлично. Теперь выполняем две команды:
root@localhost# fc-cache root@localhost# fc-list
После второй команды у вас на экране должен появиться список шрифтов со всеми возможными кодировками.
Все у вас будет работать и будет работать верно, если... если вы не используете xft - сервер для раздачи шрифтов по сети. Вам он не нужен, если вы не раздаете шрифты по сети. Т.е. на домашней машине его лучше всего отключить (или же вообще удалить - для xorg пакет называется xorg-x11-xft).
Если вы настаиваете на его работе, то принцип указания шрифтов и папок в нем тот же - русские наверх, остальные - вниз. Открываем файл конфигурации (/etc/X11/fs/config) и пишем примерно так:
catalogue = /usr/share/fonts/KOI8-R/misc:unscaled, /usr/share/fonts/KOI8-R/100dpi:unscaled, /usr/share/fonts/KOI8-R/misc, /usr/share/fonts/KOI8-R/100dpi, /usr/X11R6/lib/X11/fonts/misc:unscaled, /usr/X11R6/lib/X11/fonts/75dpi:unscaled, /usr/X11R6/lib/X11/fonts/100dpi:unscaled, /usr/X11R6/lib/X11/fonts/misc, /usr/X11R6/lib/X11/fonts/Speedo, /usr/X11R6/lib/X11/fonts/Type1, /usr/X11R6/lib/X11/fonts/cyrillic, /usr/X11R6/lib/X11/fonts/75dpi, /usr/X11R6/lib/X11/fonts/100dpi /usr/X11R6/lib/X11/fonts/cyrillic, /usr/share/fonts/default/TTF, , /usr/X11R6/lib/X11/fonts/misc:unscaled, /usr/X11R6/lib/X11/fonts/75dpi:unscaled, /usr/X11R6/lib/X11/fonts/100dpi:unscaled, /usr/X11R6/lib/X11/fonts/Type1
X-сервер мы настроили. Шрифт в программах QT настраивается через qt-config, а программы KDE заберут настройки из самого KDE, которые указываются в Центре Управления (Control Center).
После настройки X-сервера может потребоваться настройка шрифтов для тулкитов gtk1 и gtk2 и тем к ним.
Происходит такой глюк при переключении из X-сервера в консоль на машинах с картами NVidia и некоторыми Trident, где версия X-сервера Xfree86 до версии 4.4 включительно и xorg до версии 6.7.0 включительно.
Лечится командой
root@linux# /sbin/setsysfont cyr-sun16данной от рута.
Шрифт восстанавливается. Но если вы снова перейдете в графический режим (например, просто по ctrl+F7), он пропадет и при заходе в консоль понадобится опять выполнить данную команду.
Соответственно, если есть большое желание видеть русский в процессе перезагрузки при выводе сообщений от сервисов, придется вставить эту команду отдельным сервисом.
И есть еще один способ - обновить свой X-сервер до xorg версии >=6.8.0
Самый простой вариант - папки со шрифтами прописаны не в том порядке. Читайте об этом здесь
Вариант сложнее - шрифты для тулкита gtk настроены неверно. Читайте об этом здесь.
И последний вариант - вы используете WM (О разнице между WM и DE читайте здесь). Во многих WM шрифты прописываются прямо в файле настроек темы и влияют на шрифты интерфейса. Обратитесь к соответствующей документации своего WM.
Выгрузить X-сервер (xorg/XFree86) можно, нажав [ctrl+alt+backspace], если вы грузили их с помощью startx (т.е. система грузилась по сценарию загрузки 3, известному под названиями init 3 или runlevel 3).
Если вы грузили систему по сценарию загрузки 5 (т.е. имели графическое приглашение к работе) и вам нужно выгрузить графическую среду, например, для установки драйверов (этого требуют драйверы nvidia), тогда откройте свой терминал (aterm, xterm, Eterm, konsole), станьте рутом (команда su -) и наберите в терминале /sbin/telinit 3. После чего, проделав необходимые действия, можете вернуться в графический режим, набрав из-под рута /sbin/telinit 5. При этом сценарий загрузки у вас не поменяется!
Чтобы при загрузке система не загружалась в графический режим, нужно в /etc/inittab выбрать другой сценарий загрузки (runlevel). Графический режим - это 5 runlevel (в Slackware - 4), а текстовый - 3 (в Debian - 2).
Для этого находим строчку
/etc/inittab: id:N:initdefault:
где N - номер режима загрузки и меняем на '3' или '2' (текстовый).
Не забудьте, что после этого будут грузиться сервисы, указанные в /etc/rc3.d, а не /etc/rc5.d (это для RedHat).
Если вам нужно выгрузить X-сервер только для того, чтобы переставить драйверы для своей видеокарты (например, для карт nvidia), откройте программу терминала, станьте рутом, и наберите telinit 3. После чего проделав необходимые действия можете вернуться в графический режим, набрав из-под рута telinit 5. Сценарий загрузки при этом у вас не меняется!.
Для mandrake linux существует еще один способ выгрузки X-сервера:
root@localhost# service dm stop
см. /etc/X11/XF86Config на предмет опции dpms в секции Monitor
Командой startx -- :N
, где N - номер сервера. Нумерация начинается с нуля и если один сервер уже запущен, то он, скорее всего, имеет нулевой номер.
Как вариант, поставить какой-нибудь vnc.
Или запускать по telnet или ssh. Сначала рассмотрим простой вариант - обе машины работают под управлением linux.
Назовем компьютер, с которого вы хотите запустить программу и ресурсами которого вы хотите пользоваться сервером и компьютер, на котором будет отображаться программа, рабочей станцией.
На сервере должен работать telnet или ssh (лучше второе).
Тогда вы в терминале своей рабочей станции пишете
user@localhost$ xhost +server
и логинитесь на сервер по протоколу telnet или ssh:
user@localhost$ telnet server
user@localhost$ ssh server -l user
Затем после логина пишете в терминале (для ssh можно не писать, переменная выставляется автоматом):
user@localhost$ export DISPLAY=workstation:0.0
или
user@localhost$ env DISPLAY=workstation:0.0
После можете запускать программы с сервера - все должно работать.
Теперь рассмотрим вариант сложнее: linux - сервер, MS Windows - клиент. Дополнение от eRazor.
Это сделать очень легко. Ставим Cygwin, в них поднимаем X-сервер (это делается выбором софта во время установки). К X-серверу дополнительно ставится пакет OpenSSH. Далее на машине с linux запускается демон ssh.
Далее в запущенном в Cygwin X-сервере, в консоли набираем:
ssh -Y -l username remote_hostname_or_ip_addressлогинимся на машину с linux и все работает.
Очевидно, в старых версиях Cygwin надо было предварительно устанавливать переменную DISPLAY для утилиты ssh:
$ DISPLAY=localhost:0.0 $ export DISPLAY $ ssh -Y remotehost
сейчас этого делать не надо, это уже устанавлено по-умолчаною для OpenSSH цигвиновского.
Можно из под MS Windows использовать putty совместно с cygwin. Зачем это надо не знаю :-), но что бы из putty запускать иксовые приложения, необходимо сделать следущее: указываем в hostname IP адрес линукса и в Connection-->SSH->Tunnels отмечаем чекбокс Enable X11 forwarding. Коннектимся и просто запускаем X приложения. Всё.
Из cygwin можно не только SSH использовать, для запуска X приложений, а ещё и обыкновенный телнет. Единственное, надо пользоваться телнетом из цигвина из пакета inetutils, а не майкрософтовским, т.к. последний падает при запуске из X-сервера.
Последовательность действий:
Ну и дорогой вариант - citrix metaframe.
Для этого на машине, с которой вы собираетесь запускать X-сервер, должен работать xdm (или его ориентированные под kde или gnome аналоги - kdm или gdm).
Вам придется или запустить его вручную или сервер (машина с которой мы будем запускать X-сервер) должна изначально грузиться в графический режим (тогда xdm стартует автоматически).
На рабочей станции X-сервер должен быть правильно настроен.
Теперь на сервере надо привести в соответствие следующие файлы:
/etc/xdm/Xaccess здесь мы ничего не меняем * CHOOSER BROADCAST #any indirect host can get a chooser /etc/xdm/Xservers здесь мы ничего не меняем :0 local /usr/X11R6/bin/X /etc/xdm/xdm-config меняем одну строчку (ставим перед ней !) ! DisplayManager.requestPort: 0 /etc/xmd/kdmrc меняем один параметр (ставим true) # Whether KDM should listen to XDMCP requests. Default is true. Enable=true
X-сервер на клиенте запускается командой
user@localhost$ X --query server_with_xdm
Вот хорошая статья на эту тему http://linuxportal.ru/entry.php/P1318_0_3_0/
Можно - воспользуйтесь xnest и переопределите для новых иксов переменную DISPLAY=":1"
Для чего это нужно? Например, для запуска игр, не работающих в оконном режиме.
Смотрите вопрос Есть под linux какой-нибудь аналог radmin?
Указать в команде DISPLAY=:0, например, для at:
~/dozvon: #!/bin/sh wvdial & DISPLAY=:0 nt
и запуск:
user@linux$ at -f ~/dozvon 0220
Означает исполнить в 02-20 wvdial и запустить на первом X-сервере nt.
В рабочей среде KDE существует графическая программа для запуска программ по времени - kalarm. Находится в Accessories->More Accessories.
В /etc/X11/app-defaults.
Для того, чтобы настроить их под конкретного пользователя нужно в файле /.Xdefaults или /.Xresources прописать свои параметры, например для rxvt:
~/.Xdefaults: # Запускать как логин-шелл, а не суб-шелл текущего Rxvt*loginShell: true # Шрифт Rxvt*font: -monotype-courier new-medium-r-normal-*-*-180-*-*-m-*-koi8-r # Цвет фона Rxvt*background: black # Цвет шрифта Rxvt*foreground: gray # Писать о логинах в системный лог, а не файл utmp.log Rxvt*utmpInhibit: false # Rxvt*scrollBar_floating: true # Rxvt*iconName: rxvt # Тип терминала Rxvt*termName: xterm-color # Сколько строк запоминать в буфер Rxvt*saveLines: 1000 # Rxvt*colorBD: red # Rxvt*colorUL: green # Скролл справа Rxvt*scrollBar_right: True # #Rxvt*backspacekey: Backspace # Rxvt*modifier: alt
Или еще пример:
user@linux# echo '*xmessage*Background: cornsilk2' >> ~/.Xdefaults user@linux# xrdb -load ~/.Xdefaults
~/.Xresources: XTerm*eightBitInput: false XTerm*metaSendsEscape: true
В /.Xdefaults пишем такие строчки:
AcroRead*XmScrollBar.baseTranslations: #augment \ <Btn4Down>: IncrementUpOrLeft(0)IncrementUpOrLeft(0)IncrementUpOrLeft(0) \n \ <Btn5Down>: IncrementDownOrRight(0)IncrementDownOrRight(0)IncrementDownOrRight(0) \n
Неудобство будет одно - прокрутка идет только когда указатель мыши находится над полосой прокрутки. (Проблема в motif, который не работает с колесиком мыши).
Сам по себе сервер тормозить не может, если, конечно, у вас не ламповый компьютер.
Если тормозит видеовывод - фильмы, игры, OpenGL только программный, значит у вас стоят стандартные драйвера под вашу видеокарту. Скачайте драйвера от производителя и установите их.
Для карт с чипом nvidia: TNT, TNT2, Geforce - http://www.nvidia.com/object/linux.html
Для карт с чипом ati: radeon - http://www.ati.com/support/driver.html, mach64 (например, ati 3d rage pro) смотрите здесь. Для не слишком новых карт (например, radeon 9200) есть открытые драйвера, которые работают не хуже, а подчас и лучше пропиетарных. Они входят в состав X-серверов.
Чтобы проверить, программный или аппаратный у вас OpenGL, выполните glxinfo. Если у Вас direct rendering: Yes, то OpenGL аппаратный. если direct rendering: No, то нет :) Также если glxgears выдает не менее 300 fps, то это также говорит об аппаратном ускорении (на GF2 MX400 1100-1300 fps)
Если тормозит сам оконный менеджер или оконная среда - поменяйте ее или попробуйте убрать все ненужные рюшечки и (для rpm-based дистрибутивов) пересобрать под свой процессор ядро, X-сервер, оконную среду и, возможно, программы, с которыми вы чаще всего работаете.
Как вариант, может тормозить не X-сервер, а вся система. Происходит это из-за того, что отключена поддержка DMA (т.е. нет поддержки чипсета матери).
Нужно добавить в XF86Config такие строчки:
XF86Config: Section "DRI" Mode 0666 EndSection
или
Section "DRI" Group 0 Mode 0666 EndSection
http://linuxportal.ru/entry.php/P12_0_3_0
Этот документ должен помочь - http://forall.ru-board.com/Demetrio/lor/imwheel.txt
Спасибо Demetrio
Section "InputDevice" Identifier "Mouse1" Driver "synaptics" Option "Protocol" "auto-dev" Option "Device" "/dev/psaux" Option "MaxSpeed" "0.18" Option "MinSpeed" "0.02" Option "BottomEdge" "4000" Option "SHMConfig" "on" # Option "Repeater" "/dev/ps2mouse" Option "LeftEdge" "1900" Option "FingerLow" "25" Option "MaxTapTime" "180" Option "MaxTapMove" "220" Option "FingerHigh" "30" Option "VertScrollDelta" "100" Option "TopEdge" "1900" Option "RightEdge" "5400" Option "AccelFactor" "0.0010" EndSection
xset m Х
где Х - желаемая скорость (обычно 4-6)
Трудностей особо никаких. Вы ставите свой xorg, затем заходите в /etc/X11 и переименовываете XF86Config в xorg.conf (или же делаете соответствующий симлинк).
Далее открываете этот файл на редактирование и в разделе описания клавиатуры меняете значение параметра Driver на kbd.
Если вы переходите на xorg версии 6.8.0 и выше, то можете закоментировать загрузку модуля Type1. Его функции взял на себя FreeType, а разработка и поддержка Type1 прекращена (пока что он оставлен для совместимости).
Драйверы NVIDIA работают как работают - с любыми версиями xorg. С драйверами ATI ситуация неоднозначная, но по последним сообщениям они работают с любым xorg.
Открываем /etc/X11/xorg.conf и добавляем такой кусок:
Section "Extensions" Option "Composite" EndSection
Если карта nvidia или radeon 7x00,8x00,9100 с драйверами dri, то чтобы X-сервер не тормозил в раздел "Device" добавляем строчку
Option "RenderAccel" "true"
Далее скачиваем из CVS две утититы - xcompmgr и transset - согласно данному руководству:
cvs -d :pserver:anoncvs@cvs.freedesktop.org:/cvs/xapps login [Пароль не нужен, просто нажмите Enter] cvs -d :pserver:anoncvs@cvs.freedesktop.org:/cvs/xapps co transset cvs -d :pserver:anoncvs@cvs.freedesktop.org:/cvs/xapps co xcompmgr
Собираем их, Кстати, для alt linux есть соответствующие пакеты.
После этого запускаем xcompmgr -c и transset .5
Запуск xcompmgr обязателен. -с включает тени.
transset .5 - прозрачность. Небольшим курсором нужно отметить окно, которое вы хотите сделать прозрачным.
root@linux# /sbin/telinit 3
su -
, если кто не знает). Исполняем инсталлятор, для чего либо сделаем файл исполняемым, либо наберем sh название_файла.
Section "Module" Load "extmod" Load "glx" #Load "dri" #Load "dbe" #Load "GLcore" Load "record" Load "xtrap" Load "v4l" #Load "speedo" Load "type1" Load "freetype" SubSection "extmod" Option "omit xfree86-dga" EndSubSection EndSection
user@linux# XЕсли вы загрузились в графический режим (черный или серый экран с указателем мыши в виде креста), значит все в порядке. Выходим из него, нажав ctrl+alt+backspace. Далее в случае третьего init-level как обычно запускаете startx. В случае третьего - выполняете команду:
user@linux# telinit 5Появится графическое приглашение к работе. Дальше - все как обычно.
Киноманы также могут посмотреть вопрос Как на NVidia настроить TV-Out так, чтобы фильм из mplayer выводился на TV, а монитор оставался свободным?
Для Suse все устанавливается через YAST.
Вообще-то для каждого дистрибутива этот вопрос решается по-своему. Где-то накладывают патчи на ядро, где-то на исходники nvidia.
Второй способ работает и для Fedora Core и для Gentoo:
sh NVIDIA-Linux-x86-1.0-6111-pkg1.run --extract-only
--- NVIDIA-Linux-x86-1.0-6111-pkg1/usr/src/nv/nv.c 2004-08-31 22:52:17.000000000 +0100 +++ NVIDIA-Linux-x86-1.0-6111-pkg1-new/usr/src/nv/nv.c 2004-09-20 02:49:42.399538232 +0100 @@ -19,6 +19,10 @@ MODULE_ALIAS_CHARDEV_MAJOR(NV_MAJOR_DEVICE_NUMBER); #endif +#ifndef __VMALLOC_RESERVE +unsigned int __VMALLOC_RESERVE; +#endif + /* * our global state; one per device */в папку с исходниками.
patch -p1 < patch-nvidia.patch
Смените драйвер nv на vesa. Потому что nv не поддерживает DVI.
В прошлый раз никто не видел ссылки на ресурс, где все это описано по-русски. Попробуем еще раз. Все, что вам нужно, это зайти на сайт Ati in Linux.
Но если у вас карта на старом чипсете mach64, то вам сюда.
Ну если они отсюда еще не пропали, то вот - ftp://ftp.kraft-s.ru/pub/linux/XFree86/TV-Out/
Спасибо AS.