Xorg conf debian как сгенерировать

Обновлено: 03.07.2024

За отрисовку всех графических элементов в Linux отвечает графический сервер. Он реализует интерфейс прослойки между драйверами видеокарты и различными программами, которые работают с графикой.

В самых современных дистрибутивах на замену Xorg серверу пришел новый дисплейный сервер Wayland. Но он все еще находится в активной разработке и не совсем готов к постоянному использованию. Поэтому Xorg все еще применяется в большинстве дистрибутивов.

После установки видеокарта работает достаточно хорошо и настроек по умолчанию в большинстве случаев хватает, но иногда нужно изменить некоторые параметры. Мы не будем рассматривать установку драйверов. В этой статье мы сосредоточимся на том, как выполняется настройка видеокарты linux через xorg.conf.

Настройка видеокарты Linux c помощью xorg.conf

Конфигурационный файл xorg.conf - это обычный текстовый файл, в котором хранятся параметры работы Xorg сервера. Сюда входят настройки дисплея, мыши, видеокарты и клавиатуры. В былые времена этот файл был очень большим и сложным, но со временем его функции были перенесены в другие компоненты системы. Поэтому в последнее время он был видоизменен, и упрощен. Во многих дистрибутивах вообще такого файла нет, а вся конфигурация хранится в бинарном формате.

Но настройка xorg linux может все еще понадобиться, если вы хотите сделать нестандартные настройки, повысить частоту обновления экрана, изменить расширение экрана, увеличить производительность и многое другое.

Создание Xorg.conf

Обычно, этот файл размещен в директории /etc/X11/xorg.conf. Но если в вашем дистрибутиве его нет, можно без проблем создать xorg.conf на основе журнала.

Сначала скопируйте файл журнала для новой сессии:

cp /var/log/Xorg.0.log /var/log/Xorg.1.log

Xorg -configure :1

Программа проанализирует файл лога, и на его основе создаст новый файл /etc/X11/xorg.conf учитывая конфигурацию вашей системы. В вашем домашнем каталоге появиться файл xorg.conf.new, который нужно скопировать в /etc/X11/:

cp xorg.conf.new /etc/X11/

Синтаксис конфигурационного файла

Перед тем как переходить к настройке xorg.conf нужно разобраться в его синтаксисе, чтобы вы могли немного ориентироваться в самом файле. X сервер отвечает за все интерактивные связи во время сессии. Поэтому конфигурационный файл разбит на секции, несколько из них отвечают за работу с дисплеем, другие за мышь и клавиатуру. Рассмотрим основные секции файла:

  • Module - в этом разделе описываются подключение модулей, расширяющих функциональность видео драйвера. Например, GLX модуль добавляет 3D ускорение, а модули Type1 и Freetype используются для рендеринга шрифтов;
  • ServerLayout - в этой секции указаны имена трех самых необходимых устройств для каждой рабочей сессии Xorg - имена мыши, клавиатуры и экрана, которые могут использоваться в других местах файла;
  • InputDevice - в xorg.conf обычно есть две секции InputDevice, первая для мыши и вторая для клавиатуры. Большинство мышей работают отлично по умолчанию, здесь понадобиться что-то менять только если вы захотите добавить дополнительные возможности;
  • Monitor - в этой секции перечислены все настройки вашего экрана, один из наиболее важных параметров, частота горизонтальной развертки HorizSync и вертикального обновления VertRefresh, именно на основе них рассчитывается разрешение экрана. Также можно жестко задать разрешение с помощью строки ModeLine;
  • Device - тут перечислено все ваше графическое оборудование вместе с драйверами, которые используются. Чаще всего, это nv с открытым исходным кодом для NVIDIA, или fglrx для карт от AMD. Имя драйвера Intel будет зависеть от версии вашей карты, например, i810.
  • Screen - здесь расположены все настройки вашего монитора и других графических устройств. Вы можете использовать эту секцию, например, для настройки нескольких экранов.

Настройка экрана xorg

Большинство параметров вашего экрана система получает с помощью технологии EDID или Extended Display Identification Data. Это информация, переданная дисплеем видеокарте. Здесь обычно содержится модель, производитель, такйминги, разрешение и размер дисплея. Xorg использует эти параметры для выбора оптимального разрешения экрана и глубины цвета.

Но иногда информация из EDID может быть неточной или неверной. Тогда вы можете установить нужные параметры вручную через xorg.conf. Но будьте осторожны, если ваш экран не поддерживает некоторые параметры, вы можете его повредить. Характеристики каждого отдельного устройства можно найти в интернете или же в инструкции от производителя.

Например, вот секция Monitor с настройкой вертикальной и горизонтальной частот, а также разрешения:

Identifier "Monitor0"
VendorName "Unknown"
ModelName "DFP-0"
HorizSync 28.0 - 72.0
VertRefresh 43.0 - 60.0
ModeLine "1440x900_60.00" 106.5 1440 1520 1672 1904 900 901 904 932 -hsync +vsync

Добавив такие опции в секцию Device, вы можете отключить использование EDID:

Option "UseEDIDFreqs" "FALSE"
Option "UseEDIDDpi" "FALSE"
Option "ModeValidation" "NoEdidModes"

Наиболее важное значение - это две частоты, которые определяют диапазон работы устройства. Строка ModeLIne необязательна, поскольку она вычисляется автоматически, но если X сервер задает значения неверно, вы можете их прописать жестко в этой строке.

Настройка видеокарты в xorg.conf

У драйверов видеокарт ест множество различных полезных опций, которые вы можете настроить с помощью xorg.conf. Большинство из них специфичны для конкретного производителя видеокарт. Например, есть множество настроек для видеокарт NVIDIA, но с другой стороны карты от ATI не настраиваются через этот файл. Драйвера с открытым исходным кодом от Intel имеют только несколько настроек. Дальше будет рассмотрена настройка видеокарты linux для различных производителей.

Настройка Nvidia

У видеокарт NVIDIA есть множество настроек, которые можно указать в xorg.conf. Каждая строка состоит из ключа и значения, ее можно разместить в секции Screen или Device:

  • Option "NoLogo" "true" - во время инициализации драйвера показывается логотип NVIDIA. Это занимает некоторое время, поэтому с помощью такой строки можно отключить логотип;
  • Option "LogoPath" "адрес_файла" - вы можете заменить логотип NVIDIA на свое изображение, для этого просто укажите его адрес в этой строке;
  • Option "CursorShadow" "true" - если вы хотите видеть тень вокруг курсора, включите эту опцию. Тут есть два дополнительных параметра CursorShadowXOffset и CursorShadowYOffset, которые позволяют установить положение тени;
  • Option "Coolbits" "true" - эта опция позволяет включить возможность разгона частоты процессора и скорости памяти вашей видеокарты. Но вам нужно быть аккуратным с этим параметром, поскольку так вы можете повредить сове оборудование. Параметры разгона будут отображаться в утилите nvidia-config;
  • Option "DPI" "75 x 85" - если значение DPI (количество точек на дюйм) установлено неверно, то это может повлиять на правильность отображения шрифтов. Обычно, Xorg вычисляет этот параметр на основе EDID, но вы можете установить его вручную. Например, для монитора с разрешением ,440x900 и физическим размером 16x10 дюймов, значение DPI будет составлять (1,440/16)x(900/10) = 90x90.

Настройка видеокарты Intel

Графическими картами от Intel не всегда поддерживается настройка xorg.conf. Поэтому вам нужно проверить каждую из опций чтобы увидеть дает ли она какой-либо результат. Опции нужно добавлять в раздел Device:

  • Option "AccelMethod" "EXA" - эта опция позволяет включить новую архитектуру ускорения EXA. Она поддерживается в большинстве интегрированных карт Intel 943/940 и позволяет улучшить скорость композитинга.
  • Option "MigrationHeuristic" "greedy" - позволяет уменьшить использование видеопамяти на хранение различных текстур, что повышает общую производительность;
  • Option "TripleBuffer" "true" - этот параметр включает использование более совершенного метода двойной буферизации (используется для противостояния мерцанием).

Решение проблем xorg.conf

Если у вас не получается правильно настроить xorg.conf, нужно начать с самого меньшего. Используйте драйвер Vesa. Это стандартный видеодрайвер, а значит, его поддерживает любая видеокарта. Просто установите значение опции Driver - Vesa и попробуйте запустить X сервер. Вы должны увидеть свой рабочий стол.

Но драйвер Vesa работает намного медленнее, чем более современные драйвера. Если Vea позволяет запустить графическое окружение, значит проблема в вашем графическом драйвере или в настройке.

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

Выводы

Теперь вы знаете достаточно и настройка видео Linux с помощью xorg не должна для вас быть очень сложной, даже если вы раньше этим не занимались. Особенно, если вы недовольны текущими настройками. Настройка x сервера поможет вам получить больше от старого оборудования или интегрированных карт. Только не забывайте делать резервные копии перед внесением каких-либо изменений.

По умолчанию, Xorg это X Window сервер, начиная с версии Debian 4.0 (etch). Он заменил XFree86 и поддерживается в Debian командой XStrikeForce.

  1. Текущий статус
  2. Нумерация версий
  3. Конфигурация X
  4. Редактирование xorg.conf
    1. Как отредактировать конфигурационный файл xorg?
    2. Что делать, если у меня нету конфигурационного файла xorg?

    Текущий статус

    Нумерация версий

    Xorg version numbering has changed since xorg 7.0. Nowadays, Xorg is released with a version number (like 7.4). This release is composed of various modules which have their own version number (each module started at version "1.0" when Xorg 7.0 development cycle started). For instance, Xorg 7.3 was shipped with Xserver version v1.4, xf86-input-evdev v1.1.5, xf86-video-intel v2.1.1, etc.. If you want to learn more about Xorg releases/versions, see this blog.

    Debian version number follows upstream convention. The module's version may be different (The maintainers sometimes cherry-pick more recent and stable modules). Reminder: Debian package version sometimes starts with a digit followed by a column, like 1:7.3.1-2. That part (1:) is Debian-specific. Also, anything after the dash (-2) is the Debian packaging version.

    Конфигурация X

    Пример настройки клавиатуры в Squeeze (и позже). Выполните в терминале, от имени пользователя root, команду:

    Редактирование xorg.conf

    Некоторые настройки доступны только через редактирование файла xorg.conf.

    Как отредактировать конфигурационный файл xorg?

    Откройте терминал (или консоль) от имени root, и выполните:

    Что делать, если у меня нету конфигурационного файла xorg?

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

    Переключитесь в консоль, и зайдите под пользователем root (не в эмулятор терминала X). Далее запустите следующие:

    Альтернативный метод это перезагрузить компьютер в режим одиночного пользователя, и выполнить следующие команды:

    Далее следовать инструкциям на экране. Follow the on-screen instructions. This should give you something to work with.

    Вопрос: what should be done if generating this file fails, giving the message, 'Number of created screens does not match the number of detected devices'?

    Anyway, probably, this is unnecessary. Per this comment and this advice, it seems best to create the directory /etc/X11/xorg.conf.d and place in it a few files in order to tweak sections of the implicit xorg.conf, as for example is done here.

    Xorg reads vendor configuration information from the directory /usr/share/X11/xorg.conf.d, as stated by man xorg.conf.d.

    Rather than in xorg.conf, another quite useful way to adjust X settings is on the fly, in a desktop environment's list of scripts to run at startup.

    Запуск X

    После установки выполнить:

    или выполнить от root:

    (смотри справку (man) gdm).

    Пользователи KDE должны использовать kdm. Другие могут использовать xdm, gdm3, lightdm.

    Здравствуйе! Первый раз создаю конфиг Xorg. Столкнулся с проблемой. Возможно, Вы скажите, что я - ламер, но всё же. Выхлоп команды Xorg -configure следующий:


    А что оно должно было найти? lspci?

    Сорри, туплю. Можно лог на пастбин, а то на ядиске забанен?


    К сожалению, нельзя. Нет у меня там аккаунта.

    Через анонимный прокси не?



    А зачем вообще нужен тебе xorg.conf?


    По моим представлениям, если всё правильно настроить в xorg.conf, то иксы будут стартовать быстрее. Во всяком случае, на убунте, например, иксы у меня стартовали намного быстрее, чем в арче.

    По моим представлениям, если всё правильно настроить в xorg.conf, то иксы будут стартовать быстрее.

    Ну во первых, бред.

    Покажи лог работающих X-ов (без xorg.conf).
    Надеюсь команду Xorg -configure ты запускаешь не при работающих X-ах.

    arson ★★★★★ ( 10.06.16 14:39:55 )
    Последнее исправление: arson 10.06.16 14:41:29 (всего исправлений: 1)

    xorg.conf обычно нужно настраивать если конфигурация специфичная. Я вижу что драйвер radeon не нашел видяху.

    По моим представлениям, если всё правильно настроить в xorg.conf, то иксы будут стартовать быстрее. Во всяком случае, на убунте, например, иксы у меня стартовали намного быстрее, чем в арче.

    Ускорение если и можно получить, то оооочень маленькое. От xorg.conf зависит запуск собственно X сервера, занимающий доли секунды на не самом быстром железе. Время скорее занимает запуск оконного менеджера и всех прочих программ для поддержки рабочей сессии пользователя.

    Elyas ★★★★★ ( 10.06.16 15:41:31 )
    Последнее исправление: Elyas 10.06.16 15:41:52 (всего исправлений: 1)


    У тебя ноутбук? В противном случае при использовании открытого драйвера radeon вообще не нужен xorg.conf

    я не ТС. Я генерю xorg.conf руками, но у меня нет радеона. Мне это нужно для хитрой конфигурации устройств ввода. В другом месте это нужно для многоскриновой конфигурации. YMMV.


    То есть всё-таки ноутбук? А основная карточка не Intel случайно?


    Основная карточка отключена производителем на уровне bios без возможности включения


    запуск оконного менеджера и всех прочих программ

    Использую i3, и при старте самого wm ничего такого не стартует - запускается feh с обоей, compton, i3bar+i3status, вродебы всё.

    Никак не могу из-за этого долбанного системда создать xorg.conf:

    sudo Xorg -configure :1

    systemd-logind: logind integration requires -keeptty and -keeptty was not provided, disabling logind integration

    sudo Xorg -configure -keeptty :1

    systemd-logind: took control of session /org/freedesktop/login1/session/_38

    как эту сессию прибить чтобы оно не мешало?


    Ничего не помню, мануала под рукой нет, но что будет, если запускать xorg с ключом -keeptty ?

    Очевидно же - ставить Void или Devuan. Там нет systemd.


    Никак не могу из-за этого долбанного системда создать xorg.conf

    Непонятно две вещи — зачем ты хочешь создать xorg.conf и при чём здесь systemd?

    systemd-logind: logind integration requires -keeptty and -keeptty was not provided, disabling logind integration

    Это не ошибка и не влияет на создание конфига. Показывай лог (/var/log/Xorg.1.log).


    Ну так видишь, сегфолт. Иксы запущены? Просто у себя попробовал, у меня тоже засегфолтились при запущенных иксах, вырубать их не хочется.

    Иксы выключены, gdm stop сделан


    Чтобы правильное разрешение для системы установить

    Для этого необязательно генерить весь xorg.conf целиком. Хватит положить файл с нужной секцией в /etc/X11/xorg.conf.d/


    Устанавливается по дефолту странное 1024x768 84.98 герц- Modeline "1024x768"x85.0 94.60 1024 1096 1200 1376 768 771 775 809 -hsync +vsync

    с которым монитор не правильно показывает геометрию экрана. Нормально работает с таким разрешением

    xrandr –newmode 1024x768_85.00 94.50 1024 1072 1168 1376 768 769 772 808 +hsync +vsync

    я его записал в /etc/X11/Xsession.d/98x11-common-xrandr, рабочий стол открывается нормально, но в dm и tty-консоли всё равно лезет первый, неправильный вариант. Его в идела неплохо ваще удалить чтобы везде использовался второй, но как это сделать я хз

    Algierd ★ ( 01.01.20 17:23:56 )
    Последнее исправление: Algierd 01.01.20 17:27:19 (всего исправлений: 1)


    Пирамиду разграбил? Это же явно стекляшка 14-15 дюймов.

    Его в идела неплохо ваще удалить чтобы везде использовался второй, но как это сделать я хз

    Подобное обычно достигается опцией вида IgnoreEDID. Ещё раз,

    что обо всём этом написано в /var/log/Xorg.0.log

    Чтобы не гадать, я чётко знать, что о твоём железе думают иксы, какой драйвер и т.д.

    xrandr –newmode 1024x768_85.00 94.50 1024 1072 1168 1376 768 769 772 808 +hsync +vsync

    я его записал в /etc/X11/Xsession.d/98x11-common-xrandr, рабочий стол открывается нормально, но в dm и tty-консоли всё равно лезет первый, неправильный вариант.

    Вот перечитай эти свои строки снова. И расскажи мне, как конфиг X-в поправит разрешение для tty (и dm тоже). Тебе же в прошлой теме советовали задать разрешение монитора в параметрах запуска ядра . и что? не работает?

    Читайте также: