Як виявити та налаштувати вихід з xrandr?


33

У мене є монітор DELL U2410, підключений до робочого столу Compaq 100B, оснащеного вбудованою графічною картою AMD / ATI (AMD E-350). Встановлений O / S - Ubuntu 10.04 LTS.

Комп'ютер підключений до монітора через з'єднання DVI.

Проблема полягає в тому, що я не можу встановити роздільну здатність робочого столу на рідну 1920x1200. Максимально дозволена роздільна здатність - 1600x1200.

Провівши деякі дослідження, я дізнався про xrandrкорисність. На жаль, при спробі його використання я не можу налаштувати його на потрібну роздільну здатність. По-перше, він не повідомляє ім'я виводу (яке повинно бути DVI-0), defaultа замість цього. Без нього я не можу використовувати цю --fbопцію.

Утиліта EDID, схоже, добре ідентифікує монітор. Ось результат із get-edid:

    # EDID version 1 revision 3
Section "Monitor"
    # Block type: 2:0 3:ff
    # Block type: 2:0 3:fc
    Identifier "DELL U2410"
    VendorName "DEL"
    ModelName "DELL U2410"
    # Block type: 2:0 3:ff
    # Block type: 2:0 3:fc
    # Block type: 2:0 3:fd
    HorizSync 30-81
    VertRefresh 56-76
    # Max dot clock (video bandwidth) 170 MHz
    # DPMS capabilities: Active off:yes  Suspend:yes  Standby:yes

    Mode    "1920x1200" # vfreq 59.950Hz, hfreq 74.038kHz
        DotClock    154.000000
        HTimings    1920 1968 2000 2080
        VTimings    1200 1203 1209 1235
        Flags   "-HSync" "+VSync"
    EndMode
    # Block type: 2:0 3:ff
    # Block type: 2:0 3:fc
    # Block type: 2:0 3:fd
EndSection

але xrandr -qкоманда повертає:

Screen 0: minimum 640 x 400, current 1600 x 1200, maximum 1600 x 1200
default connected 1600x1200+0+0 0mm x 0mm
   1600x1200       0.0* 
   1280x1024       0.0  
   1152x864        0.0  
   1024x768        0.0  
   800x600         0.0  
   640x480         0.0  
   720x400         0.0  

Коли я намагаюся встановити роздільну здатність, я отримую:

$ xrandr --fb 1920x1200
xrandr: screen cannot be larger than 1600x1200 (desired size 1920x1200)

$ xrandr --output DVI-0 --auto
warning: output DVI-0 not found; ignoring

Як я можу встановити роздільну здатність екрана 1920x1200? Чому не xrandrвизначається DVI-0вихід?

Зауважте, що той самий комп'ютер з версією Ubuntu вище 10,04 без проблем виявляє правильну роздільну здатність. На цій машині я не можу оновити через деякі застарілі проблеми сумісності обладнання.

Крім того, я не бачу додаткових драйверів екрану в діалоговому вікні "Драйвери апаратних засобів".

----

ОНОВЛЕННЯ :

Після відповіді на це питання я отримав деякий аванс. Тепер необхідний режим вказаний у xrandr -qсписку, але я не можу перейти на цей режим. Використовуючи аплет Monitors (який тепер показує новий режим), я отримую відповідь, що:

The selected configuration for displays could not be applied. Could not set the configuration to CRTC 262.

З командного рядка це виглядає так:

$ cvt 1920 1200 60
# 1920x1200 59.88 Hz (CVT 2.30MA) hsync: 74.56 kHz; pclk: 193.25 MHz
Modeline "1920x1200_60.00"  193.25  1920 2056 2256 2592  1200 1203 1209 1245 -hsync +vsync

$ xrandr --newmode "1920x1200_60.00"  193.25  1920 2056 2256 2592  1200 1203 1209 1245 -hsync +vsync

$ xrandr -q
Screen 0: minimum 640 x 400, current 1600 x 1200, maximum 1600 x 1200
default connected 1600x1200+0+0 0mm x 0mm
   1600x1200       0.0* 
   1280x1024       0.0  
   1152x864        0.0  
   1024x768        0.0  
   800x600         0.0  
   640x480         0.0  
   720x400         0.0  
  1920x1200_60.00 (0x120)  193.0MHz
        h: width  1920 start 2056 end 2256 total 2592 skew    0 clock   74.5KHz
        v: height 1200 start 1203 end 1209 total 1245           clock   59.8Hz

$ xrandr --addmode default 1920x1200_60.00

$ xrandr -q
Screen 0: minimum 640 x 400, current 1600 x 1200, maximum 1600 x 1200
default connected 1600x1200+0+0 0mm x 0mm
   1600x1200       0.0* 
   1280x1024       0.0  
   1152x864        0.0  
   1024x768        0.0  
   800x600         0.0  
   640x480         0.0  
   720x400         0.0  
   1920x1200_60.00   59.8  

$ xrandr --output default --mode 1920x1200_60.00
xrandr: Configure crtc 0 failed

Ще одна інформація (якщо вона комусь допомагає):

$ sudo lshw -c video
  *-display UNCLAIMED     
       description: VGA compatible controller
       product: ATI Technologies Inc
       vendor: ATI Technologies Inc
       physical id: 1
       bus info: pci@0000:00:01.0
       version: 00
       width: 32 bits
       clock: 33MHz
       capabilities: pm pciexpress msi bus_master cap_list
       configuration: latency=0
       resources: memory:c0000000-cfffffff(prefetchable) ioport:f000(size=256) memory:feb00000-feb3ffff

----

ОНОВЛЕННЯ 2 : Ось оновлений lshwсписок:

$ sudo lshw -numeric -c video
  *-display UNCLAIMED     
       description: VGA compatible controller
       product: ATI Technologies Inc [1002:9802]
       vendor: ATI Technologies Inc [1002]
       physical id: 1
       bus info: pci@0000:00:01.0
       version: 00
       width: 32 bits
       clock: 33MHz
       capabilities: pm pciexpress msi bus_master cap_list
       configuration: latency=0
       resources: memory:c0000000-cfffffff(prefetchable) ioport:f000(size=256) memory:feb00000-feb3ffff

Якщо я перевірив це правильно, у вас є світлодіодний монітор - але ваше програмне забезпечення "xrandr" хоче налаштувати "crtc" - це катодний монітор. Я не знаю, що зараз робити - але, можливо, ви знайдете якусь настройку, яку можете змінити, щоб вона намагалася поговорити з вашим світлодіодним монітором. Сподіваюсь, це трохи допомагає. Вибачте.
Пітерлінг

@Peterling - Я помітив, що це повторюване повідомлення для інших повідомлень про цю помилку, але це правда, що це дивно. У мене немає поняття, що з цим робити.
ysap

1
Тепер "crtc" - це лише термін. Пікселі все ще закручуються в рядки та пікселі, а crtc - це тактовий механізм у логіці відео, який створює правильний час для певної роздільної здатності. Коли термін був введений, "crtc" був фактичним індивідуальним інтегральним ланцюгом, а дисплеєм міг бути лише CRT.
Джон S Gruber

Який відеодрайвер ви використовуєте?
Джон С Грубер

@JohnSGruber - як ти можеш це сказати?
ysap

Відповіді:


9

Я думаю, що ти дістанешся десь, коли ти досягнеш цього, щоб збільшити:

Екран 0: мінімум 640 x 400, струм 1600 x 1200, максимум 1600 x 1200    
                                                  ⇑⇑⇑⇑⇑⇑⇑⇑⇑⇑⇑
 

Тоді, я думаю, ви зможете заставити xrandr використовувати користувальницький режим, який ви навчилися визначати (якщо він все-таки знадобиться після виправлення основної проблеми).

Збільшити розмір віртуального екрана

[Ця] [1] стаття пропонує додати віртуальний рядок до розділу «Екран» файлу конфігурації xorg.conf, щоб встановити максимальний розмір екрана. Це від пари років тому. xrandr -qПроте, протестуючи це, я не зміг встановити віртуальний рядок, не перевищуючи максимальний розмір екрана, заданий . Однак, з моїм драйвером та апаратним забезпеченням цінність була вже досить великою 8192x8192.

Можна експериментувати, додавши це як /etc/X11/xorg.conf, наприклад:

Розділ "Екран"
    Ідентифікатор "Мій екран"
    Підрозділ "Відображення"
        Віртуальна 2048 2048
    EndSubSection
EndSection

Ви, ймовірно, не побачите /etc/X11/xorg.conf, оскільки сьогоднішні драйвери для відео намагатимуться визначити розумні за замовчуванням для всього, а сучасні дистрибутиви залишають цей файл поза. Однак він буде використовуватися, якщо він присутній.

Якщо у вас вже є файл /etc/X11/xorg.conf, ви можете спробувати додати вищевказану віртуальну рядок до підрозділу "Дисплей" її розділу "Екран".

Я пропоную вам протестувати це за допомогою редактора командного рядка, оскільки є певна ймовірність, що це зіпсує вашу здатність увійти з графічним інтерфейсом Ubuntu, і вам може знадобитися зробити Alt-Ctrl-F1, увійти та відредагувати (або видалити) файл за допомогою інструментів командного рядка. Усі помилки мають бути в /var/log/Xorg.0.log або /var/log/Xorg.1.log.

Насправді, ви могли і повинні перевірити це, увійшовши до додаткового користувача у своїй системі (не виходячи зі свого звичайного userid) та перевіривши новий сеанс, таким чином ви можете використовувати Alt-Ctrl-F7 для повернення до роботи GUI, якщо є проблеми. У випадку, якщо ви використовуєте додатковий ідентифікатор користувача для входу, не виходячи з першого, відповідним журналом буде /var/log/Xorg.1.log. Не виходите з робочого сеансу чи завантаження, поки у вас не буде робочого xorg.conf або знову не буде видалено його.


Використовуйте інший графічний драйвер

Ще одна прочитана стаття вирішила цю проблему шляхом переключення драйверів, але з вашого запитання я бачу, що програма Додаткові драйвери не дає вам жодних альтернатив. (Я припускаю, що це ви маєте на увазі вище, коли ви згадуєте "Діалогове вікно апаратних драйверів". Якщо ви не заміните драйвери програмою "Додаткові драйвери", ви будете використовувати драйвер, який ядро ​​вважає відповідним для вашої відеокарти або логіки відеосистеми на вашій материнській платі.

Що стосується ОП, з того, що ви описали у коментарях вище, видно, що ваша система повинна використовувати драйвер Radeon, але це не так. Я використовую драйвер radeon і зазвичай встановлюю горизонтальну роздільну здатність до 1920 (максимум для драйвера / картки здається 8192). Драйвери vesa і fb - це дуже основні драйвери для старого обладнання - досить старі, що монітори тієї епохи не мали дуже великих дисплеїв.


Оновіть Ubuntu

Якщо ви працюєте з комп’ютером, більш новим, ніж встановлена ​​версія Ubuntu, і, зокрема, з його ядром Linux, цілком можливо, що ядро ​​не розпізнає ваш графічний адаптер. Якщо це так, вам потрібно оновити програмне забезпечення Ubuntu, яке містить підтримку вашого обладнання.

Оскільки він не може запустити fglrx для запуску, це, на жаль, стосується ysap. Через новизну цього обладнання щодо випуску ysap, у ядрі Linux Lucid (або Maverick) немає підтримки для [1002.9802]. Перша підтримка цього обладнання з’явилася в ядрі Natty 2.6.38. Щоб перевірити підтримку певного пристрою в модулях ядра, ви можете перейти до / lib / module / kernel-version /module.alias файл та шукати значення адаптера. Для цього обладнання:

grep v00001002d00009802 /lib/modules/2.6.38-10-generic/modules.alias

Щоб перевірити підтримку ядра Natty. Він відповідає:

alias pci:v00001002d00009802sv*sd*bc*sc*i* radeon

Як тест, ви можете спробувати завантажити живий компакт-диск у системі та спробувати встановити потрібну роздільну здатність у цьому середовищі (натисніть Спробуйте Ubuntu, а не Встановити).

Отримати відповідну підтримку драйверів може також дозволити сучасні графічні засоби, такі як пряме візуалізація та підтримка OpenGL, що значно покращує продуктивність та естетику.

Для персонального комп'ютера ви також можете використовувати оновлене ядро, якщо для вашої версії Ubuntu доступне сумісне. Для виробничого комп’ютера може знадобитися оновити Ubuntu до новішої версії, коли вона буде доступна, для надійності та надійності.


1
Дивна річ у тому, що я xorg.confніде не маю файлової системи. Але, якщо я розумію правильно, у сучасному гномі цей файл застарілий і не потрібен. Я знайшов xorg.conf.dпрограму та відповідну сторінку man.
ysap

/etc/X11/xorg.conf більше не потрібен для апаратних засобів більшості систем, але він не є застарілим - ви можете надати його для встановлення необхідних деталей. Ось як я спробував сказане. Ці дані також можна помістити у файл, який ви додаєте до каталогу /etc/X11/xorg.conf.d/. Додам приклад.
John S Gruber

Подивимось, чи зрозуміліше це. Будь ласка, дайте мені знати, якщо ні.
Джон С Грубер

Спасибі, Джон. Я перевірив файл xorg.conf, який ви опублікували, і справді він перекрутив мій дисплей, коли я переключив облікові записи, тому довелося його видалити.
ysap

У Ubuntu 10.04 в меню Система / Адміністрація є аплет "Апаратні диски". Цей аплет не містив альтернативних драйверів. Однак я щойно зрозумів, що ПК, про який йде мова, наразі не підключений до Інтернету (ми зараз демонструємо демонстрацію), тому можливо, що як тільки ми повернемося в офіс, я побачу альтернативу драйверу ATI. Я з туманністю пам'ятаю з того минулого, що власники драйверів не вирішили цю проблему, і мені так і не вдалося отримати це рішення з 10.04.
ysap

15

Я також стикався з цією проблемою (раніше був екран Dell 23 ")

Спочатку визначте, який інтерфейс підключений до вашого дисплея:

$ xrandr -q

Вихід команди буде:

mukolla@pk:~$ xrandr -q

Screen 0: minimum 320 x 200, current 1920 x 1080, maximum 8192 x 8192

LVDS connected (normal left inverted right x axis y axis)
   1366x768       60.0 +
   1280x720       59.9  
   1152x768       59.8  
   1024x768       59.9  
   800x600        59.9  
   848x480        59.7  
   720x480        59.7  
   640x480        59.4  

HDMI-0 disconnected (normal left inverted right x axis y axis)

VGA-0 connected ......

   1024x768       75.1     60.0  
   800x600        75.0     60.3  
   640x480        75.0     60.0  
   720x400        70.1  

Зовнішній дисплей підключений до порту VGA-0 . Це важливо помітити.

Тепер додайте новий режим для відображення:

$ xrandr --newmode "1920x1080_60.00"  172.80  1920 2040 2248 2576  1080 1081 1084 1118  -HSync +Vsync
$ xrandr --addmode VGA-0 1920x1080_60.00
$ xrandr --output VGA-0 --mode 1920x1080_60.00

Це не працює для зміни вбудованого екрана, правда?
Хофі

Помилка BadMatch з напр .: xrandr --addmode "DVI-I-1" "1280x800_60.00"будь-яка ідея? (DVI-I-1 підключений)
Водолій Сила

@AquariusPower Спробуйте DVI-1-1замістьDVI-I-1
WinEunuuchs2Unix

6

Добрий день. У мене була ця проблема під час підключення до системи Ubuntu, у якої немає екрана (раніше був екран Dell 24 ", але це було потрібно в іншому місці). Я не досить яскравий, щоб знати, чому це працює, але ось низка команд що працює для мене - редагування файлів не потрібно.

Зауважте: що при перезавантаженні вам потрібно запустити їх ще раз. Я пропоную сценарій оболонки.

gtf 1920 1200 60 -x
xrandr --newmode "1920x1200_60.00"  193.16  1920 2048 2256 2592  1200 1201 1204 1242  -HSync +Vsync
xrandr --addmode VGA1 1920x1200_60.00
xrandr --output VGA1 --mode 1920x1200_60.00

Це працює надзвичайно добре!
Фолкерт ван Хейсден

4

Я додав вищевказані рядки (отримав дещо інший вихід від команди gtf) у файл .xprofile у моєму домашньому каталозі. Працював як сон. Дивись нижче.

gtf 1920 1080 60 -x

xrandr --newmode "1920x1080_60.00"  172.80  1920 2040 2248 2576  1080 1081 1084 1118  -HSync +Vsync

xrandr --addmode Virtual1 1920x1080_60.00

xrandr --output Virtual1 --mode 1920x1080_60.00

Я використовую програвач Vmware Player, звідси і назва виводу.


2

спробуйте встановити arandr, щоб налаштувати конфігурацію xrandr за допомогою GUI .

sudo apt install arandr

потім встановіть роздільну здатність, орієнтацію та положення дисплеїв та, нарешті, збережіть конфігурацію.

ви можете бачити, що його вихід - це сценарій оболонки (.sh), як правило, на ~ / .screenlayout

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.