Инструменты пользователя

Инструменты сайта

Загрузка не удалась. Возможно, проблемы с правами доступа?

linux:xrandr-set-res

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

linux:xrandr-set-res [2016/11/11 22:50] (текущий)
Строка 1: Строка 1:
 +===== Установка и изменение разрешения экрана в linux через консоль =====
 +В общем, ноут Sony Vaio, разрешения 1280*600 60Гц и 1600*768 60Гц - но linux упорно выставляет какое-то свое.\\
 +Решение:​ принудительно при загрузке объяснить системе,​ что у меня есть нужные мне разрешения.\\
 +Для начала формируем строку режима которую будем передавать xrandr:
 +<​code>​
 +alexander@alexander-vaio ~ $ cvt 1280 600 60
 + ​1280x600 59.90 Hz (CVT) hsync: 37.38 kHz; pclk: 61.00 MHz
 + ​Modeline "​1280x600_60.00" ​  ​61.00 ​ 1280 1328 1456 1632  600 603 613 624 -hsync +vsync
 +------
 +"​1600x768_60.00" ​ 100.25 ​ 1600 1688 1848 2096  768 771 781 798 -hsync +vsync
 +</​code>​
 +Нам нужна строка:​ "​1600x768_60.00" ​ 100.25 ​ 1600 1688 1848 2096  768 771 781 798 -hsync +vsync\\
 +Аналогично получаем строку для 1280х600.\\
 +Своим все в скрипт:​
 +<​code>​
 +#!/bin/bash
 +xrandr --newmode "​1280x600_60.00" ​  ​61.00 ​ 1280 1328 1456 1632  600 603 613 624 -hsync +vsync
 +xrandr --newmode "​1600x768_60.00" ​ 100.25 ​ 1600 1688 1848 2096  768 771 781 798 -hsync +vsync
 +xrandr --addmode LVDS-0 1280x600_60.00
 +xrandr --addmode LVDS-0 1600x768_60.00
 +xrandr --output LVDS-0 --mode 1280x600_60.00
 +</​code>​
 +Комментарии:​\\
 +  - Сначала добавляем в систему режимы 1280x600_60.00 и 1600x768_60.00,​ передавая строки режимов (сформированных cvt) в xrandr (--addmode)
 +  - Затем говорим системе через xrandr, что режимы у нас применяются к экрану ноутбука (LVDS-0)
 +  - Затем принудительно переключаем на режим 1280x600_60.00 для экрана ноутбука (LVDS-0)
 +  - Ну и наконец,​ добавляем этот скрипт в автозагрузку ([[linux:​lubuntu-autostart]])
 +Профит.\\
 +\\
 +=== Примечание ===
 +У xrandr есть замечательный параметр:​ --size - он позволяет переключить __разрешение__,​ а не __режим__.\\
 +А если запустить xrandr без параметров,​ то будет выдан список разрешений.
 +Пример:​
 +<code bash>
 +alexander@alexander-ThinkPad-X201 ~ $ xrandr
 +Screen 0: minimum 320 x 200, current 1280 x 800, maximum 32767 x 32767
 +LVDS1 connected 1280x800+0+0 (normal left inverted right x axis y axis) 261mm x 163mm
 +   ​1280x800 ​      ​60.2*+ ​  ​50.0  ​
 +   ​1024x768 ​      ​60.0  ​
 +   ​800x600 ​       60.3     ​56.2  ​
 +   ​640x480 ​       59.9  ​
 +VGA1 disconnected (normal left inverted right x axis y axis)
 +HDMI1 disconnected (normal left inverted right x axis y axis)
 +DP1 disconnected (normal left inverted right x axis y axis)
 +VIRTUAL1 disconnected (normal left inverted right x axis y axis)
  
 +alexander@alexander-ThinkPad-X201 ~ $ xrandr --size 1024x768
 +</​code>​
 +<code bash>
 +#​Установить разрешение в 1280x1024
 +xrandr --size 1280x1024
 +</​code>​
 +=== Манипуляции с дисплеями ===
 +Если у Вас 2х головая видеокарта,​ и система чудит, пытаясь использовать разрешение одного выхода в другом,​ то Вам поможет параметр --output и --off:
 +<code bash>
 +xrandr --output LVDS1 --off
 +</​code>​
 +LVDS1 - имя дисплея,​ оно получено запуском чистого xrandr.\\
 +Если приведенную выше команду запустить при старте системы,​ например,​ автозапуском в lightDM ([[linux:​lubuntu-lightdm|Lubuntu:​ LightDM]]), то это гарантирует корректную работу системы в ситуации,​ когда ядро считает что есть 2 монитора...
 +
 +=== Смотри также ===
 +[[linux:​xrandr-change-res|Linux:​ смена разрешения экрана по кнопке]]
linux/xrandr-set-res.txt · Последние изменения: 2016/11/11 22:50 (внешнее изменение)