5.4. X11 の設定

寄稿: Christopher Shumway.

5.4.1. はじめに

X11 の設定を始める前に、 次の情報が必要となります。

モニターの仕様は、X11 がどの解像度とリフレッシュレートで動くかを決定するために用いられます。 こういった仕様は、通常はモニターに付いてくるドキュメントや 製造元の Web サイトから取得することができます。 必要なものは二つの数字の範囲、 一つは水平走査周波数でもう一つは垂直同期周波数、です。

ビデオアダプタのチップセットは X11 がグラフィックハードウェアとやり取りするために どのドライバーモジュールを使うかを定義します。 ほとんどのチップセットが自動認識されますが、 正常に認識されない時のために知っておくとよいでしょう。

ビデオメモリーは、 グラフィックアダプタがどの解像度とどの色数で動くことができるかを決めます。 これは、ユーザが自分のシステムにおける制限を理解するために知っておくことが重要です。

5.4.2. X11 の設定

X11 の設定は複数のステップの処理に分けられます。 まずは初期設定ファイルを作りましょう。 スーパーユーザになって次のようにしてください。

# Xorg -configure

XFree86 の場合は、以下のように入力します。

# XFree86 -configure

これにより、/root ディレクトリに xorg.conf.new という X11 の設定ファイルの雛形が生成されます (su(1) か直接ログインのどちらを利用したかが、受け継がれる $HOME 環境変数に影響します)。 XFree86 では、この設定ファイルは XF86Config.new という名称です。 X11 プログラムはシステム上のグラフィックハードウェアを検出し、 そのハードウェア用の適切なドライバーを読み込む設定ファイルを作ります。

次のステップは、作成した設定ファイルで Xorg がそのグラフィックハードウェアで動くことを確認することです。 そのためには以下のようにします。

# Xorg -config xorg.conf.new

XFree86 ユーザは以下のようにします。

# XFree86 -xf86config XF86Config.new

黒とグレーのグリッドと X のマウスポインターが現われればその設定は成功です。 テストから抜け出すためには単に次のキーを同時に押します。 Ctrl+Alt+Backspace

Note: もしマウスが動作しなければ、 先へ進む前にマウスの設定を行う必要があります。 FreeBSD インストールの章の マウスの設定 を参照してください。

次は xorg.conf.new (XFree86 を使用しているのなら XF86Config.new) を好みに合うように調整します。 emacs(1)ee(1) のようなテキストエディターでファイルを開いてください。 まずモニターの周波数を加えます。 これらは水平と垂直の同期周波数と表現されるのが普通です。 これらの値は xorg.conf.new"Monitor" セクションに次のように書き加えます。

   Section "Monitor"
        Identifier   "Monitor0"
        VendorName   "Monitor Vendor"
        ModelName    "Monitor Model"
        HorizSync    30-107
        VertRefresh  48-120
    EndSection
     

HorizSyncVertRefresh というキーワードが設定ファイル中にない場合があります。 その場合には、 HorizSync キーワードの後には水平走査周波数の、 VertRefresh キーワードの後には垂直同期周波数の正しい値を加えてください。 上の例では対象となるモニターの周波数が書かれています。

X はモニターが対応していれば DPMS (Energy Star) 機能を使うことができます。 xset(1) プログラムでタイムアウトをコントロールしたり、 強制的にスタンバイ、サスペンドや電源オフにすることができます。 モニターの DPMS 機能を有効にしたい場合は、 "Monitor" セクションに次の行を加えてください。

Option       "DPMS"

xorg.conf.new (もしくは XF86Config.new) はエディターで開いたままにしておき、 デフォルトの解像度と色数を好みで選びましょう。 "Screen" セクションに以下のように書きます。

Section "Screen"
        Identifier "Screen0"
        Device     "Card0"
        Monitor    "Monitor0"
        DefaultDepth 24
        SubSection "Display"
                Viewport  0 0
                Depth     24
                Modes     "1024x768"
        EndSubSection
EndSection

DefaultDepth というキーワードは 実行時のデフォルトの色数について記述するためのものです。 Xorg(1) (もしくは XFree86(1)) のコマンドラインスイッチ -depth が使用された場合はそちらが優先されます。 Modes というキーワードは与えられた 色数におけるデフォルトの解像度を記述しておくためのものです。 ターゲットのシステムのグラフィックハードウェアによって定義されている、 VESA スタンダードモードのみがサポートされていることに注意してください。 上の例ではデフォルトの色数はピクセルあたり 24 ビットであり、 この色数での解像度は 1024 ピクセル× 768 ピクセルです。

最後に、設定ファイルを保存し、 上の例にあるようにテストしてみてください。

Note: トラブルシューティングの過程で手助けするツールのひとつに X11 のログファイルがあります。これには、 X11 サーバが検知したデバイスそれぞれについての情報があります。 Xorg のログファイル名は /var/log/Xorg.0.log という形式です (XFree86 のログファイル名は XFree86.0.log という形式です)。実際のログファイル名は Xorg.0.log から Xorg.8.log のように変わります。

すべてうまくいったなら、設定ファイルを Xorg(1) (もしくは XFree86(1)) が見つけることができる共通の場所に置きます。 これは、通常は /etc/X11/xorg.conf/usr/X11R6/etc/X11/xorg.conf (XFree86 では /etc/X11/XF86Config/usr/X11R6/etc/X11/XF86Config) です。

# cp xorg.conf.new /etc/X11/xorg.conf

XFree86 では、以下のようにします。

# cp XF86Config.new /etc/X11/XF86Config

これで X11 の設定は完了です。 startx(1)XFree86 4.X を起動するために x11/wrapper ポートをインストールします。 Xorg にはすでに wrapper コードが組み込まれており、 wrapper port をインストールする必要はありません。 xdm(1) を使って X11 サーバを起動することもできます。

Note: X11 配布物に含まれている xorgcfg(1) (XFree86 では xf86cfg(1)) というグラフィカルな設定ツールもあります。 これは、対話的に 適切なドライバと設定を選択して設定を行うことができます。 このプログラムは、xorgcfg -textmode コマンドでコンソール環境から起動することもできます。 詳しくは、 xorgcfg(1)xf86cfg(1) のマニュアルページを参照してください。

そのほかに、xorgconfig(1) (XFree86 では xf86config(1)) というツールもあります。 このプログラムはユーザフレンドリではないコンソールユーティリティですが、 他のツールが動作しない状況でも動作する可能性が高いでしょう。

5.4.3. 高度な設定

5.4.3.1. Intel® i810 グラフィックチップセットの設定

Intel® i810 統合チップセットを設定するには、 X11 にカードを制御させるために AGP プログラミングインタフェースである agpgart が必要になります。 詳しくは、agp(4) ドライバのマニュアルページをご覧ください。

これで他のグラフィックカードと同様に設定を行うことができるようになります。 カーネルに agp(4) ドライバが組み込まれていないシステムでは、 kldload(8) モジュールをロードしようとしても動作しないということに注意してください。 このドライバは、カーネル内部に組み込まれるか、もしくは、 /boot/loader.conf を使用することで、 起動時にカーネル内に存在する必要があります。

もし XFree86 4.1.0 (もしくはそれ以降) を使っており、 fbPictureInit といったようなシンボルが見つからないというメッセージが現われるなら、 X11 設定ファイルで Driver "i810" の後に次のような行を入れてみてください。

Option "NoDDC"