Use xrandr to set a screen resolution
From time to time I see posts on various Linux forums asking how to set a screen resolution.
Often this results in a discussion about writing a configuration file, xorg.conf ( /etc/X11/xorg.conf )
While there is nothing wrong with writing a xorg.conf, xorg.conf is depreciated and writing an xorg.conf is intimidating to many users.
Using xrandr is potentially faster and easier.
Then set the resolution you want to use (change the “1400×1050″ to your desired resolution).
On many monitors xrandr will set the dpi automatically. When it does not, or if you prefer an alternate setting, you can try specifying a dpi manually.
Open any editor and enter the following configuration:
If 96 is not the right size for your, try a smaller ( 72 ) or larger ( 135 ) value.
Example, using a nvidia card:
First list your monitors with xrandr, note the monitor names (in bold).
With openbox, add the xrandr command to ~/.config/openbox/autostart.sh.
With fluxbox, use ~/.fluxbox/startup
Alternately, depending on your window manager, you can add the xrandr command to ~/.xinit
For a link on using ~/.xinit, see this fluxbox wiki page or, as an alternate, the Arch wiki Slim page.
3 5 (thanks to charlie-tca and KenP) graphical font ends for xranadr : lxrandr , grandr, the grandr applet, ARandR, and Krandr.
lxrandr is a part of the lxde and is lightweight and fast, but does not have all of the xrandr options available.
grandr has more a few more options, including rotation, but again not all the xrandr options are available from the graphical interface.
grandr applet is a small application (gnome applet) that would run in your panel and similar to lxrandr allows one to set a resolution.
Krandr is a KDE applet to set your resolution.
arandr is similar to grandr, but IMO the interface seems less intuitive. Arandr will write a script for you to set your resolution at login.
For additional information on using xrandr, see the xrandr man page.
Often this results in a discussion about writing a configuration file, xorg.conf ( /etc/X11/xorg.conf )
While there is nothing wrong with writing a xorg.conf, xorg.conf is depreciated and writing an xorg.conf is intimidating to many users.
Using xrandr is potentially faster and easier.
How to use xrandr
First display a list of your monitor resolutions
xrandr -q
Note: If you do not see the resolution you desire
listed, either your monitor does not support that particular resolution
or you may need to install a driver (ati, intel, or nvidia are the big
3). The technical details of installing these drivers varies by graphics
card and will not be covered in this blog. Then set the resolution you want to use (change the “1400×1050″ to your desired resolution).
xrandr -s 1400x1050
Adjusting the dpi (dots per inch)
dpi refers to the resolution of your monitor (pixels per inch) and affects window decorations, window size, and font. See this page for additional information.On many monitors xrandr will set the dpi automatically. When it does not, or if you prefer an alternate setting, you can try specifying a dpi manually.
xrandr --dpi 96 -s 1400x1050
If that fails, you can specify a dpi in ~/.XdefaultsOpen any editor and enter the following configuration:
Xft.dpi: 96
This dpi will then be applied to any new windows you open. Alternately you can log off and back on (no need to reboot).If 96 is not the right size for your, try a smaller ( 72 ) or larger ( 135 ) value.
Dual monitors
To use xrandr to configure dual monitors, use the --right-of or --left-of options.Example, using a nvidia card:
First list your monitors with xrandr, note the monitor names (in bold).
bodhi@zenix:~$ xrandr -q
Screen 0: minimum 320 x 200, current 1920 x 1200, maximum 4096 x 4096
DVI-I-1 connected 1920x1200+0+0 (normal left inverted right x axis y axis) 520mm x 320mm
1920×1200 60.0*+
1600×1200 60.0
1680×1050 60.0
1280×1024 75.0
1280×960 60.0
1152×864 75.0
1024×768 75.1 70.1 60.0
832×624 74.6
800×600 72.2 75.0 60.3 56.2
640×480 72.8 75.0 60.0
720×400 70.1
DVI-I-2 connected 1920x1200+0+0 (normal left inverted right x axis y axis) 520mm x 320mm
1920×1200 60.0*+
1600×1200 60.0
1680×1050 60.0
1280×1024 75.0
1280×960 60.0
1152×864 75.0
1024×768 75.1 70.1 60.0
832×624 74.6
800×600 72.2 75.0 60.3 56.2
640×480 72.8 75.0 60.0
720×400 70.1
TV-1 disconnected (normal left inverted right x axis y axis)
Use xrandr to configure the monitors. Change the names “DVI-I-1″ and
“DVI-I-2″ to the names of your monitors. You may also need to adjust the
resolution and change “--left-of to” “--right-of”Screen 0: minimum 320 x 200, current 1920 x 1200, maximum 4096 x 4096
DVI-I-1 connected 1920x1200+0+0 (normal left inverted right x axis y axis) 520mm x 320mm
1920×1200 60.0*+
1600×1200 60.0
1680×1050 60.0
1280×1024 75.0
1280×960 60.0
1152×864 75.0
1024×768 75.1 70.1 60.0
832×624 74.6
800×600 72.2 75.0 60.3 56.2
640×480 72.8 75.0 60.0
720×400 70.1
DVI-I-2 connected 1920x1200+0+0 (normal left inverted right x axis y axis) 520mm x 320mm
1920×1200 60.0*+
1600×1200 60.0
1680×1050 60.0
1280×1024 75.0
1280×960 60.0
1152×864 75.0
1024×768 75.1 70.1 60.0
832×624 74.6
800×600 72.2 75.0 60.3 56.2
640×480 72.8 75.0 60.0
720×400 70.1
TV-1 disconnected (normal left inverted right x axis y axis)
xrandr --auto --output DVI-I-2 --mode 1920x1200 --left-of DVI-I-1
Has the same effect as
xrandr --auto --output DVI-I-1 --mode 1920x1200 --right-of DVI-I-2
Set a primary display
To set a primary display, use the --primary option.
xrandr --auto --output DVI-I-1 --mode 1920x1200 --primary --right-of DVI-I-2
Configuring xrandr to run when you log in
The method to do this varies by desktop and with most major desktop environments (gnome, kde, xfce) you would add the xrandr command to your start up options / applications.With openbox, add the xrandr command to ~/.config/openbox/autostart.sh.
With fluxbox, use ~/.fluxbox/startup
Alternately, depending on your window manager, you can add the xrandr command to ~/.xinit
For a link on using ~/.xinit, see this fluxbox wiki page or, as an alternate, the Arch wiki Slim page.
Graphical tools
I am aware oflxrandr is a part of the lxde and is lightweight and fast, but does not have all of the xrandr options available.
grandr has more a few more options, including rotation, but again not all the xrandr options are available from the graphical interface.
grandr applet is a small application (gnome applet) that would run in your panel and similar to lxrandr allows one to set a resolution.
Krandr is a KDE applet to set your resolution.
arandr is similar to grandr, but IMO the interface seems less intuitive. Arandr will write a script for you to set your resolution at login.
For additional information on using xrandr, see the xrandr man page.
This entry was posted in Linux. Bookmark the permalink.
Xorg (русский)
Xrandr
xrandr --auto --output VGA-0 --mode 1440x900 --right-of LVDSXRandR: настройка режимов работы с дисплеями (мониторами) в GNU/Linux
XRandR — расширение X сервера, позволяющее производить настройки режимов работы мониторов. Например, можно изменить разрешение, вывести изображение на внешний монитор, повернуть изображение и тому подобное. Утилита часто полезна для настройки корректного разрешения при подключении к внешнему монитору или телевизору.
Вывод доступных мониторов и режимов
Введя в терминале
Пример вывода:
Возможные названия интерфейсов:
Названия интерфейсов могут отличаться в зависимости от используемой видеокарты. Для последующей работы с конкретным интерфейсом, необходимо запомнить его название (например, VGA1 если мы работам на видео от Intel и подключаем монитор по VGA, который и хотим настроить через XRandR).
Изменение разрешения
Лучше всего рассмотреть пример:
Опция --output предназначена для указания на нужный интерфейс, а --mode собственно на выбираемый режим работы. Обратите внимание, что выбираемый режим должен быть указан в выводе команды
Если нужный вам режим не прописан, то необходимо добавить его вручную. Это поможет настроить монитор на нужное разрешение, если в списке разрешений отсутствует правильное разрешение (например, если при подключении 1080p монитора в программах настройки экрана доступно лишь намного меньшее разрешение).
Создание нового режима
Если режим уже существует (смотреть перввую часть статьи), но не связан с нужным интерфейсом, то можно добавить режим таким образом:
Если режима ещё не существует, то сначала вызываем утилиту CVT (Coordinated Video Timing) с необходимым разрешением и частотой кадров в качестве параметров (в качестве примера добавим режим 1600x900 при 60Гц):
Вывод утилиты cvt с нашими параметрами таков:
Далее мы скопируем всё, что после Modeline при вызове xrandr с ключём создания нового режима:
Теперь осталось "привязать" созданный режим к нужному интерфейсу (в нашем примере к VGA1):
Наконец, мы можем выбрать нужное нам разрешение для монитора:
Режимы работы с несколькими мониторами
Отключение дисплея
Отключить не нужный в данный момент дисплей можно с помощью опции --off:
Расположение мониторов относительно друг-друга
Аналогично используется опция --left-of
Чтобы сделать виртуальный экран большего разрешения, чем физический (в таком режиме, чтобы увидеть всё изображение необходимо будет передвигать курсор за границы) применяем команду:
После этого у вас будет виртуальное разрешение 1280x720 при 1024x600 физическом.
Поворот
Используйте следующие опции применительно к нужному интерфейсу:
Сохранение настроек
Для активации необходимых настроек при старте, создайте файл ~/.xprofile (~/ указывает на расположение в домашней директории) и внесите в него необходимые строки команд xrandr.
Статья частично основана по материалам англоязычной документации.
Введя в терминале
xrandr
, мы увидим список интерфейсов по которым могут быть подключены мониторы и доступные режимы работы монитора (разрешение и частота смена кадров в герцах).Пример вывода:
Screen 0: minimum 320 x 200, current 1024 x 600, maximum 4096 x 4096
LVDS1 connected 1024x600+0+0 (normal left inverted right x axis y axis) 223mm x 125mm
1024x600 60.0*+
800x600 60.3 56.2
640x480 59.9
VGA1 disconnected (normal left inverted right x axis y axis)
LVDS1 connected 1024x600+0+0 (normal left inverted right x axis y axis) 223mm x 125mm
1024x600 60.0*+
800x600 60.3 56.2
640x480 59.9
VGA1 disconnected (normal left inverted right x axis y axis)
Возможные названия интерфейсов:
- LVDS1 — экран ноутбука;
- VGA1 — экран, подключаемый через VGA;
- DVI1 — экран, подключаемый через DVI;
Названия интерфейсов могут отличаться в зависимости от используемой видеокарты. Для последующей работы с конкретным интерфейсом, необходимо запомнить его название (например, VGA1 если мы работам на видео от Intel и подключаем монитор по VGA, который и хотим настроить через XRandR).
Изменение разрешения
Лучше всего рассмотреть пример:
xrandr --output LVDS1 --mode 800x600
Опция --output предназначена для указания на нужный интерфейс, а --mode собственно на выбираемый режим работы. Обратите внимание, что выбираемый режим должен быть указан в выводе команды
xrandr
(смотреть предыдущий раздел статьи).Если нужный вам режим не прописан, то необходимо добавить его вручную. Это поможет настроить монитор на нужное разрешение, если в списке разрешений отсутствует правильное разрешение (например, если при подключении 1080p монитора в программах настройки экрана доступно лишь намного меньшее разрешение).
Создание нового режима
Если режим уже существует (смотреть перввую часть статьи), но не связан с нужным интерфейсом, то можно добавить режим таким образом:
xrandr --addmode VGA1 1024x600
— добавляем режим с разрешением 1024x600 и 60 Гц частотой для монитора, подключённого по VGA1.Если режима ещё не существует, то сначала вызываем утилиту CVT (Coordinated Video Timing) с необходимым разрешением и частотой кадров в качестве параметров (в качестве примера добавим режим 1600x900 при 60Гц):
cvt 1600 900 60
Вывод утилиты cvt с нашими параметрами таков:
# 1600x900 59.95 Hz (CVT 1.44M9) hsync: 55.99 kHz; pclk: 118.25 MHz
Modeline "1600x900_60.00" 118.25 1600 1696 1856 2112 900 903 908 934 -hsync +vsync
Modeline "1600x900_60.00" 118.25 1600 1696 1856 2112 900 903 908 934 -hsync +vsync
Далее мы скопируем всё, что после Modeline при вызове xrandr с ключём создания нового режима:
xrandr --newmode "1600x900_60.00" 118.25 1600 1696 1856 2112 900 903 908 934 -hsync +vsync
Теперь осталось "привязать" созданный режим к нужному интерфейсу (в нашем примере к VGA1):
xrandr --addmode VGA1 1600x900_60.00
Наконец, мы можем выбрать нужное нам разрешение для монитора:
xrandr --output VGA1 --mode 1600x900_60.00
Режимы работы с несколькими мониторами
Отключение дисплея
Отключить не нужный в данный момент дисплей можно с помощью опции --off:
xrandr --output LVDS1 --off
— отключаем монитор ноутбука.Расположение мониторов относительно друг-друга
xrandr --output VGA1 --right-of LVDS1
— монитор, подключённый по VGA1 будет располагаться "справа" от монитора ноутбука (переходить на внешний монитор необходимо будет через правый угол монитора ноутбука).Аналогично используется опция --left-of
xrandr --output LVDS1 --primary
— монитор ноутбука становится основным.Чтобы сделать виртуальный экран большего разрешения, чем физический (в таком режиме, чтобы увидеть всё изображение необходимо будет передвигать курсор за границы) применяем команду:
xrandr --output LVDS1 --mode 1024x600 --fb 1280x720 --panning 1280x720
После этого у вас будет виртуальное разрешение 1280x720 при 1024x600 физическом.
Поворот
Используйте следующие опции применительно к нужному интерфейсу:
- --rotate normal
- --rotate left
- --rotate right
- --rotate inverted (поворот на Пи радиан)
Сохранение настроек
Для активации необходимых настроек при старте, создайте файл ~/.xprofile (~/ указывает на расположение в домашней директории) и внесите в него необходимые строки команд xrandr.
Статья частично основана по материалам англоязычной документации.
Комментариев нет:
Отправить комментарий