Xrandr

From Gentoo Wiki
Jump to:navigation Jump to:search
This page is a translated version of the page Xrandr and the translation is 100% complete.
Other languages:
Resources

RandR (Resize and Rotate)[1] X プロトコルの拡張とそのCLIツールであるxrandrは画面解像度や画面の回転、X下でのマルチディスプレイのスクリーンを管理するために使われています。

バージョン1.4ではマルチグラフィックボードがサポートされ、それ以降のバージョン(> 1.5)ではさらにUSB接続のモニターもサポートされます。(これはおそらくxorg-server 1.13 のDisplayLink[2]のサポートに統合されるでしょう。)

インストール

x11-apps/xrandrは次のコマンドでインストールすることができます。

root #emerge --ask x11-apps/xrandr
Note
このツールはたいていwindow managersとともにインストールされるはずです。なぜならこれはディスプレイを管理するために利用されているからです。

GUI ツール

xrandrを使うためのいくつかのGUIツールが存在します。これはGentooでサポートされているツールの一覧です。

設定

Xに関係したスクリプトを実行する一般的な方法はユーザーのホームディレクトリに存在する~/.xinitrcもしくは~/.xprofileといったファイルを使用することです。xrandrに関するコードをこれらのファイルに記述すれば、そのコードは毎回のXの開始時に自動的に実行され、設定は永続的になります。

使い方

xrandrはモニターのExtended Display Identification Data (EDID)を使用してその性能を確認します。欠陥のあるハードウェアは誤ったEDIDを報告してしまうので、そのような場合にはトライアンドエラーを繰り返しながらカスタムスクリプトを作成することで対処することができます。

Warning
NVIDIAAMDのバイナリなどのいくつかのグラフィックドライバーはxrandrをサポートしません。

スクリーンクエリ

xrandrを引数なしで実行することで、すべての利用可能なディスプレイ出力インターフェースの一覧と、現在の状態及び性能と共にすべてのディスプレイの一覧が表示されるでしょう。

user $xrandr
Screen 0: minimum 320 x 200, current 1440 x 900, maximum 8192 x 8192
VGA-1 disconnected (normal left inverted right x axis y axis)
LVDS-1 connected 1440x900+0+0 (normal left inverted right x axis y axis) 304mm x 190mm
   1440x900       60.1*+
   1024x768       60.0
   800x600        60.3
   640x480        59.9

xrandrクエリの結果には、すべての利用可能なインターフェースが<interface_name>-<index>とラベル付けされて含まれています。それぞれは接続状態とスクリーンのモードを表しています。接続されたデバイスの現在のモードは*で示され、推奨されたモードは+で示されます。

RandRの一般的なディスプレイインターフェースの命名規則:

スクリーンの操作

xrandr クエリで発見された出力インターフェースに対して、操作を行うことができます。以下はよく使われるタスクの例です:

  • 複数のデバイスが接続されている場合に主ディスプレイを設定する:
user $xrandr --output LVDS-1 --primary
  • 既知のインターフェースにつなげて、外部ディスプレイへ拡張する (left-of, right-of, above, below, same-as):
user $xrandr --output DVI-1 --auto --left-of LVDS-1
  • ディスプレイを回転する (normal, left, right, inverted):
user $xrandr --output LVDS-1 --rotate left
  • デバイスを切る:
user $xrandr --output LVDS-1 --off

スクリーンモード

モードは常に解像度とリフレッシュレートから構成されます。xrandr クエリによって、ハードウェアはどのモードがサポートされているかを報告します。ハードウェアが誤った情報を報告した場合は、独自のモードを定義することができます。接続されたデバイスのモードを変更するには:

user $xrandr --output LVDS-1 --mode 1024x768

これはそのモードでの最高のリフレッシュレートを使用します。リフレッシュレートも (kHz 単位で) 変更するには:

user $xrandr --output LVDS-1 --mode 1024x768 --rate 75

変更は即時反映されます。上記のハードウェアでは 75kHz はサポートされていないので、エラーを出力したり、画面が空になったりするかもしれません。これは次のセッションが開始するまで続くでしょう。おかしなことになった場合は、 Ctrl+Alt+Backspace を使うことで現在のセッションを終了し、X が再起動するでしょう。

75Hz モードを追加するには、適切なモード行を得るために cvt ツール (x11-base/xorg-server) を使用することができます:

user $cvt 1024x768 refresh 75

Modeline 以降のすべてを次のコマンドの後ろに追加する必要があります:

user $xrandr --newmode "1024x768_75.00" 109.00 1280 1368 1496 1712 1024 1027 1034 1063 -hsync +vsync

クエリを再実行すると、新しく追加したモードが表示されるはずです。

Note
モードを手動で追加しても、以前動作しなかったディスプレイがそのモードで動作するようになることはありません。

参考

外部の情報

参照