XFree86サーバー

Red Hat LinuxはXFree86 4を基本X Window Systemとして使用します。X Window Systemには各種の必須Xライブラリ、フォント、ユーティリティ、ドキュメンテーション、開発ツールが含まれています。現在XFree86 4がサポートしていないハードウェアに加えて旧ハードウェアとの互換性を最大にするために、Red Hat Linuxは旧XFree86 3サーバーパッケージを提供します。両バージョンのXFree86サーバーは設計方法論が違っており、設定の詳細や機能が異なっています。

基本のXサーバー(XFree86 4)にはハードウェア3Dアクセラレーションサポート、アンチエイリアスフォント用XRender拡張子、モジュラードライバベースの設計、最新ビデオハードウェアと入力デバイスのサポート、その他多数の機能といった最先端のXFree86テクノロジー拡張機能が含まれています。

対照的に、XFree86 3サーバーパッケージはモジュラー式でないスタンドアロンXサーバーであり、特定のビデオハードウェアのディスプレイドライバとして動作します。XFree86 3サーバーを使用している場合には、特定のインストールされているビデオカード用に特定のXサーバーを持たなければなりません。これらの旧サーバーは互換性を保つためにのみ含まれており、新しいXFree86 4サーバーにしかない多くの機能をサポートしていません。バックワード互換性のあるXFree86 3サーバーは現在は重視されておらず、今後のRed Hat Linuxのリリースではそのうちに削除されることになるでしょう。

Red Hat LinuxインストールプログラムはXFree86の基本コンポーネント、インストールするために選択したオプションのXFree86パッケージ、XFree86 4 Xサーバー、ハードウェアに必要と思われるXFree86 3 Xサーバーパッケージをインストールします。

X Window Systemは基本的にファイルシステム内の2つの場所に入れられます。

/usr/X11R6

Xクライアントバイナリ(binディレクトリ)、各種ヘッダーファイル(includeディレクトリ)、ライブラリ(libディレクトリ)、manページ(manディレクトリ)、その他さまざまなXドキュメンテーション(/usr/X11R6/lib/X11/doc/ディレクトリ)を含むディレクトリです。

/etc/X11

/etc/X11ディレクトリ階層には、X Window Systemを構成するさまざまなコンポーネントの設定ファイルがすべて含まれています。これには、Xサーバーそのもの、フォントサーバー(xfs)、Xディスプレイマネージャー(xdm)、その他多数の基本コンポーネントが含まれています。各種ウィンドウマネージャに加えて、gdmkdmなどのディスプレイマネージャや、その他Xツールもこの階層に各自の設定を保存します。

XFree86バージョン4サーバーは単一のバイナリ実行可能ファイル—/usr/X11R6/bin/XFree86です。このサーバーは実行時に、ビデオドライバ、フォントエンジンドライバ、その他必要な特別モジュールを含む各種Xサーバーモジュールを/usr/X11R6/lib/modules/ディレクトリから動的にロードします。これらのモジュールの一部はサーバーが自動的にロードしますが、一部は使用前にサーバーの設定ファイル/etc/X11/XF86Config-4に指定しなければならないオプション機能です。XFree86 4用のビデオドライバは/usr/X11R6/lib/modules/drivers/ディレクトリに入れられます。DRIハードウェアアクセラレート3Dドライバは/usr/X11R6/lib/modules/dri/ディレクトリに入れられます。

XFree86バージョン3サーバーは別個のXサーバーバイナリであり、それぞれが特定範囲のビデオハードウェアを駆動します。インストールしたXFree86サーバーバイナリは/usr/X11R6/bin/ディレクトリにXF86_<server-type>という形式の名前で見つけることができます。<server-type>は使用しているサーバーの名前です。XFree86 3には、基本的なXF86_VGA16サーバー、XF86_SVGAサーバー、XF86_Mach64XF86_S3XF86_AGXのようなさらに特別なアクセラレートサーバー、その他のサーバーなどといった多種多様なサーバーがあります。

XFree86サーバー設定ファイル

XFree86サーバー設定ファイルは/etc/X11/ディレクトリに保存されます。XFree86 4サーバーやXFree86 3サーバーが使用する設定ファイルの構文は異なり、互いに互換性がないので、それぞれ別個の設定ファイルを持ちます。 Xサーバーの設定に、XFree86 4サーバーは/etc/X11/XF86Config-4を使用しますが、XFree86 3は/etc/X11/XF86Configを使用します。 Red Hat Linuxがインストールされると、インストールプロセス中に集められた情報を使用して、XFree86の両バージョンの設定ファイルが作成されます。Xconfiguratorを使用して新規ビデオカードを再設定すると、両方の設定ファイルが再度生成されます。

設定ファイルはセクションの集まりで構成されており、それぞれのセクションはXFree86サーバーの特定の動作を定義します。設定セクションの多くは両方のファイルで類似ですが、相違点も多々あります。明確な相違点の1つは、XFree86 4サーバーが使用しているXF86Config-4設定ファイルにはバージョン3の設定ファイルにはないServerLayoutModuleなどの新規セクションが含まれていることです。XFree86 4サーバーでは、マウス、キーボード、ドローイングタブレットのような複数の入力デバイスを使用できます。各入力デバイスは、独自のInputDeviceセクションに入っており、デバイスについて述べている識別名が割り当てられています。XFree86 3サーバーはマウスとキーボードをKeyboardディレクティブとPointerディレクティブを介して設定します。

手動でこれらのファイルの編集が必要なことはあまりありませんが、ファイルに入っているさまざまなセクションとオプションパラメータについて知っておくと便利です。

各セクションはSection "<section-name>"行で始まり、EndSection行で終わります。各セクション内には、オプション名と最低1つのオプション値を持つ行が数行あり、ときには引用符で囲まれています。2タイプの設定ファイルが類似していることをふまえ、XFree86バージョン4ファイルの最も有効なセクションと各種の一般的な設定値の働きを以下に示します。

Device

システムが使用するビデオカードに関する情報を指定します。設定ファイルには、最低1つのDeviceセクションがなければなりません。ビデオカードが複数あり、シングルカードで実行できる設定値が複数ある場合には、Deviceセクションが複数のことがあります。次のオプションは、必須であったり、広く使用されたりするオプションです。

DRI

Direct Rendering Infrastructure(DRI)は、基本的に、サポートしている最新のビデオハードウェア上で、3Dソフトウェアアプリケーションが3Dハードウェアアクセラレーション機能を利用できるようにします。また、2Dオペレーション用のDRIを使用するために拡張されたドライバを使用すると、DRIは2Dハードウェアアクセラレーションのパフォーマンスを改善できます。ModuleセクションでDRIが有効でないときは、このセクションは無視されます。

いろいろなビデオカードがさまざまにDRIを使用しています。従って、DRI値を変更するときは、その前に、/usr/X11R6/lib/X11/doc/README.DRIファイルを読み、各自のビデオカード特有の情報を確認してください。

Files

このセクションは、フォントパスのような、XFree86サーバーに欠かすことのできないサービスのパスをセットします。一般的なオプションは、以下のとおりです。

InputDevice

XFree86サーバーを使用するシステムへ情報を提供するためにマウスやキーボードなどの入力デバイスを設定します。ほとんどのシステムは、最低2つのInputDeviceセクション、キーボード、マウスを持っています。各セクションには、以下の2行が含まれています。

  • Driver —デバイスを使用するためにロードするドライバの名前をXFree86に伝えます。

  • Identifier —デバイスの名前を設定します。通常は、最初のデバイスに対してデバイス名とその後ろに0で始まる数値を入れます。たとえば、最初のキーボードInputDeviceには、Keyboard0Identifierがあるはずです。

InputDeviceセクションのほとんどには、特定デバイスに特定のオプションを割り当てる行が含まれています。これらの行はそれぞれOptionで始まり、引用符に囲まれたオプションの名前とその後ろにそのオプションに割り当てる値が含まれています。マウスには通常、PS/2のようなProtocolやこのセクションで使用するマウスを指定するDeviceなどのオプションが与えられます。InputDeviceセクションは丁寧にコメント付けされており、一定の行のコメントを外すだけで特定のデバイスの追加オプションを設定できるようになっています。

Module

/usr/X11R6/lib/modules/ディレクトリからどのモジュールをロードするかをXFree86サーバーに伝えます。モジュールはXFree86サーバーに追加機能を提供します。これらの値は編集しないでください。

Monitor

システムが使用するモニターのタイプを示します。1つのMonitorセクションが最小である一方、Monitorセクションが複数のことがあり、マシンでモニターごとに1セクションを使用します。

警告警告
 

Monitorセクションのオプションの値をマニュアルで編集するときは注意してください。このセクションの値が不適切であると、モニターが損傷することがあります。使用可能な安全な操作パラメータについては、モニターに付属の文書を参照してください。

通常は、次のオプションが設定されます。

  • HorizSync —モニターと互換性のある水平同期周波数レンジをkHz単位でXFree86に伝えます。これらの値は、特定のModelineエントリの値をこのモニターで使用するかどうかがわかるようにXFree86サーバーのガイドとして使用されます。

  • Identifier —このモニターに固有の名前を提供します。通常は、各モニターに0から番号を付けていきます。最初のモニターは"Monitor0"、2番目は"Monitor1"というように名前を付けていきます。

  • Modeline —特定の解像度でモニターが使用するビデオモードを指定するのに使用します。水平同期解像度や垂直リフレッシュ解像度を指定します。一般に、Modelineエントリの前に、Modelineが指定している内容を説明するコメントがあります。

    設定ファイルにModelineのコメントがない場合には、値(またはモードの説明)をスキャンしてModelineがしようとしていることを明確にすることができます。モード説明セクションの詳細については、XF86Configのmanページを参照してください。

  • ModelName —モニターの型名を表示するオプションパラメータ。

  • VendorName —モニターを製造したメーカーを表示するオプションパラメータ。

  • VertRefresh —モニターがサポートしている垂直リフレッシュレンジ周波数をkHzで一覧表示します。これらの値は、特定のModelineエントリの値をこのモニターで使用するかどうかがわかるようにXFree86サーバーのガイドとして使用されます。

Screen

対で使用でき、一定の設定値を持つ特定のDeviceMonitorをバインドします。設定ファイルにはScreenセクションが最低1つなければなりません。一般に、次のオプションがあります。

  • DefaultDepthScreenセクションに、使用するデフォルトの色の深み(color depth)をビットで示します。デフォルト値は8で、16は何万もの色を、32は何百万もの色を使用できます。

  • Device —このScreenセクションで使用するDeviceセクションの名前を示します。

  • IdentifierServerLayoutセクションがScreenセクションを参照し、利用できるようにScreenセクションを識別します。

  • Monitor —このScreenセクションで使用するMonitorセクションの名前を示します。

Screenセクション内に、特定のモニターとビデオカードを最初に使用するときに最初に試すべき色の深み(Depth)と解像度(Mode)をXFree86サーバーに伝えるDisplayサブセクションがある場合があります。

ServerFlags

種々のグローバルXFree86サーバー設定値が含まれています。これらの設定値はServerLayoutセクションで指定したオプションで変更されることがあります。最も良く使用される設定値に、次のものがあります。

  • DontZap[Ctrl]-[Alt]-[Backspace]を組み合わせて使用して、XFree86サーバーを直接終了できないようにします。

  • DontZoom[Ctrl]-[Alt]-[+]キーや[Ctrl]-[Alt]-[-]キーの組合せを使用して、設定済みのビデオ解像度を循環できないようにします。

ServerLayout

Screenセクションを必須のInputDeviceセクションや各種オプションとバインドして、起動時にXFree86サーバーが使用するひとまとまりの環境設定を作成します。XFree86サーバー起動時に、ServerLayoutセクションが複数あり、そのうちのどれを使用するかコマンドラインに指定されていない場合には、設定ファイル内の最初のServerLayoutセクションが使用されます。

ServerLayoutセクションでは、次のオプションを使用します。

  • IdentifierServerLayoutセクションを記述するのに使用する固有の名前。

  • InputDevice —XFree86サーバーで使用するあらゆるInputDeviceセクションの名前。ほとんどのユーザーは、システムに設定された最初のキーボードとマウス、Keyboard0Mouse0の2行だけを使用します。オプションCoreKeyboardCorePointerはこれらがXFree86サーバーで使用する優先されたキーボードとマウスであることを示しています。

  • Screen —使用するScreenセクションの名前。 Screenセクションの名前の左側の数値は、マルチヘッド設定で使用する特別なスクリーン番号を示しています。標準のシングルヘッドビデオカードの場合には、この値は0です。右側の数値は画面の左上にXとYの絶対座標を示します。デフォルトは0 0です。

    以下は、典型的なスクリーンエントリーの例です。

    Screen      0  "Screen0" 0 0

詳細については、XF86Configのmanページを参照してください。

XFree86サーバーの最新設定を再表示するには、xset -qコマンドを入力します。これにより、キーボード、ポインタ、スクリーンセーバー、フォントのパスに関する情報が表示されます。