Xorg は、 標準的なほとんどのビデオカード、 キーボード、ポインティングデバイスに対応しています。 これらのデバイスは、自動的に検出されるため、 手動の設定は必要ありません。
もし、使用しているコンピュータですでに Xorg が使われているのであれば、 コンフィグレーションファイルを移動するか、削除してください。
#
mv /etc/X11/xorg.conf ~/xorg.conf.etc
#
mv /usr/local/etc/X11/xorg.conf ~/xorg.conf.localetc
3D アクセラレータを利用できるシステムでは、
Xorg を実行するユーザを
video
または
wheel
グループに追加して、
使用できるようにしてください。
ユーザ jru
をどちらのグループでも利用できるようにするには以下のように実行してください。
#
pw groupmod video -m
jru
|| pw groupmod wheel -mjru
デフォルトでは TWM ウィンドウマネージャがインストールされています。 Xorg が起動すると、 このウィンドウマネージャが立ち上がります。
%
startx
古いバージョンの FreeBSD では、 テキストコンソールに戻れるようにするために、 システムコンソールは vt(4) に設定する必要があります。 「Kernel Mode Setting (KMS)」 を参照してください。
ビデオカードの 3D アクセラレータを有効にするには、
/dev/dri
へのアクセスが必要となります。
通常は、X を実行するユーザを
video
または wheel
グループに追加するするだけです。
ここでは、pw(8) を使ってユーザ
slurms
を
video
グループ、または
video
グループが存在しない時に、
wheel
グループに追加しています。
#
pw groupmod video -m
slurms
|| pw groupmod wheel -mslurms
コンピュータが、コンソールの表示から、 X 用の高解像度の表示へと切り替える時には、 ビデオの出力 mode が設定されている必要があります。 最近の Xorg では、 カーネル内部のシステムを使って効率的にこれらのモードの変換をしています。 古いバージョンの FreeBSD では、 KMS システムを用いない sc(4) が使用されています。 X を閉じた後、システムコンソールは動作をしていても、 表示に黒になります。 新しい vt(4) コンソールではこの問題は起こりません。
以下の行を /boot/loader.conf
に追加して
vt(4) を有効にしてください。
kern.vty=vt
Xorg は、
複数のディレクトリから設定ファイルを探します。
FreeBSD において、設定ファイルのディレクトリは、
/usr/local/etc/X11/
が推奨されます。
このディレクトリを使うことで、
アプリケーションのファイルをオペレーティングシステムとは区別する事になります。
昔のコンフィグレーションファイルの置き場である
/etc/X11/
も機能します。
しかしながら、この場所に置くと、アプリケーションファイルと
FreeBSD システムのファイルが混ざってしまうため、推奨されません。
複数のファイルを用いて、
各ファイルが特定の部分を設定するようにすると、
古い単一の xorg.conf
を用いるよりも設定が簡単になります。
これらのファイルは、
メインのコンフィグレーションファイルのディレクトリの
xorg.conf.d/
サブディレクトリに置かれます。
フルパスは、一般的に
/usr/local/etc/X11/xorg.conf.d/
となります。
これらのファイルの例は、この節の後半で説明します。
古い単一の xorg.conf
も機能しますが、
xorg.conf.d/
サブディレクトリに複数のファイルで設定する形式に比べると、
柔軟ではなく、わかりにくいものとなります。
Iron Lake (HD Graphics) および Sandy Bridge (HD Graphics 2000) を含む Ivy Bridge (HD Graphics 2500, 4000, および P4000) までのほとんどの Intel® グラフィックスは、3D acceleration に対応しています。
ドライバ名: intel
参考情報については https://en.wikipedia.org/wiki/List_of_Intel_graphics_processing_units をご覧ください。
ATI/Radeon: 2D および 3D acceleration は、 HD6000 シリーズまでのほとんどの Radeon カードで対応しています。
ドライバ名: radeon
参考情報については https://en.wikipedia.org/wiki/List_of_AMD_graphics_processing_units をご覧ください。
NVIDIA: いくつかの NVIDIA ドライバが
Ports Collection の x11
カテゴリから利用できます。
ビデオカードのモデルに対応するドライバをインストールしてください。
参考情報については https://en.wikipedia.org/wiki/List_of_Nvidia_graphics_processing_units をご覧ください。
ノートブックコンピュータによっては、 チップセットまたはプロセッサに組み込まれているグラフィックプロセッサユニットの他に、 追加でそれらを持つものがあります。 Optimus は、 Intel® と NVIDIA ハードウェアを組み合わせています。 Switchable Graphics または、 Hybrid Graphics は、 Intel® または AMD® プロセッサと AMD® Radeon GPU を組み合わせています。
これらのハイブリッドなグラフィックシステムの実装は、 システムごとに異なるので、 FreeBSD の Xorg は、 これらのすべてのバージョンについて対応しているわけではありません。
コンピュータによっては、 片方のグラフィックアダプタを無効にしたり、 標準のビデオカードドライバの一つとともに使われる discrete モードを選択できるような BIOS オプションを提供しています。 たとえば、Optimus システムでは、NVIDIA GPU を無効にできるものがあります。 その後、Intel® ビデオカードは、 Intel® ドライバで利用できます。
BIOS の設定は、
コンピュータのモデルに依存します。
システムによっては、両方の GPU
を有効にできますが、
そのようなシステムの機能を利用するには、
Device
セッションにおいて、
メインの GPU
のみを使用するようなコンフィグレーションファイルを作成ことで十分です。
Ports Collection の
x11-drivers
ディレクトリには、
あまり使用されないようなドライバも用意されています。
特定のドライバによりサポートされていないようなカードでも、 x11-drivers/xf86-video-vesa で使用できるかもしれません。 このドライバは、x11/xorg によりインストールされます。 手動でインストールするには、 x11-drivers/xf86-video-vesa としてインストールしてください。 ビデオカードに対して、特定のドライバが見つからない場合には、 Xorg はこのドライバを使うことを試みます。
x11-drivers/xf86-video-scfb も同様に、多くの UEFI および ARM® コンピュータで動くような、 使用するカードを特定していないビデオドライバです。
コンフィグレーションファイルにおいて Intel® ドライバを設定するには、以下のようにしてください。
/usr/local/etc/X11/xorg.conf.d/driver-intel.conf
Section "Device" Identifier "Card0" Driver "intel" # BusID "PCI:1:0:0" EndSection
1つ以上のビデオカードが存在する場合には、
BusID
行のコメントを外し、
希望するカードを選択するように設定できます。
ビデオカードバス ID は、
pciconf -lv | grep -B3
display
で表示できます。
コンフィグレーションファイルで、Radeon ドライバを設定するには以下のようにしてください。
/usr/local/etc/X11/xorg.conf.d/driver-radeon.conf
Section "Device" Identifier "Card0" Driver "radeon" EndSection
コンフィグレーションファイルで VESA ドライバを設定するには、以下のようにしてください。
/usr/local/etc/X11/xorg.conf.d/driver-vesa.conf
Section "Device" Identifier "Card0" Driver "vesa" EndSection
UEFI または ARM®
コンピュータを使うために scfb
ドライバを設定するには、以下のように設定してください。
scfb
ビデオドライバを選択する。/usr/local/etc/X11/xorg.conf.d/driver-scfb.conf
Section "Device" Identifier "Card0" Driver "scfb" EndSection
ほとんどすべてのモニタは、Extended Display Identification Data standard (EDID) に対応しています。 Xorg は EDID を使ってモニタと通信し、 対応している解像度とリフレッシュレートを検出します。 そのため、モニタを使用するのに最も適切な設定が選択されます。
モニタにより対応している他の解像度は、 コンフィグレーションファイルに希望する解像度を設定する、 または X サーバを起動後、xrandr(1) により選択が可能となります。
パラメータを与えずに xrandr(1) を実行すると、 ビデオ出力と検出されているモニタのモードを確認できます。
%
xrandr
Screen 0: minimum 320 x 200, current 3000 x 1920, maximum 8192 x 8192 DVI-0 connected primary 1920x1200+1080+0 (normal left inverted right x axis y axis) 495mm x 310mm 1920x1200 59.95*+ 1600x1200 60.00 1280x1024 85.02 75.02 60.02 1280x960 60.00 1152x864 75.00 1024x768 85.00 75.08 70.07 60.00 832x624 74.55 800x600 75.00 60.32 640x480 75.00 60.00 720x400 70.08 DisplayPort-0 disconnected (normal left inverted right x axis y axis) HDMI-0 disconnected (normal left inverted right x axis y axis)
この出力からは、リフレッシュレート約 60 Hz で、
スクリーン解像度 1920x1200 ピクセルの表示に
DVI-0
出力が使用されていることが分かります。
また、DisplayPort-0
および
HDMI-0
インタフェースには、
モニタは接続されていません。
xrandr(1) を使用して、 他のディスプレイモードを選択できます。 たとえば、60 Hz で、1280x1024 の表示に変更するには、 以下のように実行してください。
%
xrandr --mode 1280x1024 --rate 60
ノートブックコンピュータの外部出力を使用して、 ビデオプロジェクタに接続することがよく行われます。
出力端子のタイプおよび番号は、デバイスごとに異なります。
また、各端子の名前もドライバごとに異なります。
あるドライバが HDMI-1
と呼ぶ出力が、
別のドライバでは HDMI1
と呼ばれることもあります。
そのため、最初に xrandr(1) を実行して、
利用可能な出力のすべての一覧を表示してください。
%
xrandr
Screen 0: minimum 320 x 200, current 1366 x 768, maximum 8192 x 8192 LVDS1 connected 1366x768+0+0 (normal left inverted right x axis y axis) 344mm x 193mm 1366x768 60.04*+ 1024x768 60.00 800x600 60.32 56.25 640x480 59.94 VGA1 connected (normal left inverted right x axis y axis) 1280x1024 60.02 + 75.02 1280x960 60.00 1152x864 75.00 1024x768 75.08 70.07 60.00 832x624 74.55 800x600 72.19 75.00 60.32 56.25 640x480 75.00 72.81 66.67 60.00 720x400 70.08 HDMI1 disconnected (normal left inverted right x axis y axis) DP1 disconnected (normal left inverted right x axis y axis)
この出力からは、組み込みパネルの
LVDS1
, 外部出力の
VGA1
, HDMI1
, そして
DP1
端子の 4 つの出力を確認できます。
プロジェクタは
VGA1
出力に接続されています。
情報を得られたので、xrandr(1)
を使ってプロジェクタの標準の解像度に設定し、
デスクトップの右側にスペースを追加できます。
%
xrandr --output VGA1 --auto --right-of LVDS1
この設定において、--auto
は、
EDID
により検出された解像度とリフレッシュレートを選択します。
解像度を正しく検出できていない場合には、
--auto
のかわりに、
--mode
を使うことで、
解像度を固定値を与えることにより設定できます。
たとえば、ほとんどのプロジェクタでは
1024x768 の解像度で使用できるので、
この場合には、--mode 1024x768
のように設定できます。
xrandr(1) は、X を起動する際に、
適切なモードを設定するように、しばしば
.xinitrc
から実行されます。
コンフィグレーションファイルでスクリーンの解像度を 1024x768 と設定するには以下のようにしてください。
/usr/local/etc/X11/xorg.conf.d/screen-resolution.conf
Section "Screen" Identifier "Screen0" Device "Card0" SubSection "Display" Modes "1024x768" EndSubSection EndSection
EDID
を持っていないモニタもあります。その場合には、
モニタが対応している周波数の範囲を、
HorizSync
および
VertRefresh
で、指定することで設定できます。
/usr/local/etc/X11/xorg.conf.d/monitor0-freq.conf
Section "Monitor" Identifier "Monitor0" HorizSync 30-83 # kHz VertRefresh 50-76 # Hz EndSection
キーボード上の標準化されたキーの位置を レイアウト と呼びます。 レイアウトと他の調整可能なパラメータについては、 xkeyboard-config(7) にまとめられています。
アメリカ合衆国のレイアウトがデフォルトです。
他のレイアウトを選択するには、
InputClass
で、
XkbLayout
および
XkbVariant
オプションを設定してください。
クラスに対応するすべての入力デバイスに適用できます。
以下の例では、 oss
キー配置のフランス語のキーボードレイアウトを選択します。
/usr/local/etc/X11/xorg.conf.d/keyboard-fr-oss.conf
Section "InputClass" Identifier "KeyboardDefaults" Driver "keyboard" MatchIsKeyboard "on" Option "XkbLayout" "fr" Option "XkbVariant" "oss" EndSection
アメリカ合衆国、スペイン、 ウクライナのキーボードレイアウトを、 Alt+Shift によって切り替えるようにするには以下のように設定します。 レイアウトスイッチングコントロールや現在のレイアウトインディケータを改良するには、 x11/xxkb または、 x11/sbxkb を使ってください。
/usr/local/etc/X11/xorg.conf.d/kbd-layout-multi.conf
Section "InputClass" Identifier "All Keyboards" MatchIsKeyboard "yes" Option "XkbLayout" "us, es, ua" EndSection
X をキーの組み合わせで終了できるように設定できます。
デフォルトでは、幾つかのアプリケーションで、
キーボードコマンドと衝突してしまう可能性があるため、
このキーの組み合わせは設定されていません。
このオプションを有効にするには、
キーボードの InputDevice
セクションを変更してください。
/usr/local/etc/X11/xorg.conf.d/keyboard-zap.conf
Section "InputClass" Identifier "KeyboardDefaults" Driver "keyboard" MatchIsKeyboard "on" Option "XkbOptions" "terminate:ctrl_alt_bksp" EndSection
コンフィグレーションオプションにより、 多くのマウスパラメータを調整できます。 すべての一覧については、mousedrv(4) をご覧ください。
ハードウェアによっては、Xorg の自動設定で適切な設定が行われなかったり、 自動設定とは別の設定にしたいときがあります。 そのような場合のため、 カスタムコンフィグレーションファイルを作成できます。
検出されたハードウェアをベースとした、 Xorg のコンフィグレーションファイルを作成できます。 このファイルは、 カスタムコンフィグレーションファイルの最初の出発点として有用です。
以下のようにすると xorg.conf
が生成されます。
#
Xorg -configure
このコンフィグレーションファイルは、
/root/xorg.conf.new
として保存されます。
必要となる変更を行った後、このファイルをテストしてください。
#
Xorg -config /root/xorg.conf.new
新しい設定を調整してテストしたら、
ファイルに分割して、標準の場所である、
/usr/local/etc/X11/xorg.conf.d/
に置いてください。
本文書、および他の文書は ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/ からダウンロードできます。
FreeBSD に関する質問がある場合には、
ドキュメント を読んだ上で
<questions@FreeBSD.org> まで (英語で) 連絡してください。
本文書に関する質問については、
<doc@FreeBSD.org> まで電子メールを (英語で) 送ってください。