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ドキュメンテーション(docディレクトリ)を含むディレクトリです。

/etc/X11

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

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

  • BusID ビデオカードのバス位置を指定します。このオプションは、カードが複数あるシステムにのみ必要であり、Deviceセクションが正しいカードで適切な設定値を使用するように設定しなければなりません。

  • Driver このビデオカードデバイスを使用するために、どのドライバをロードするのかXFree86に伝えます。

  • Identifier このビデオカードに固有の名前を提供します。通常は、この名前はこのDeviceセクションで使用されているビデオカードとまったく同じ名前に設定します。

  • Screen ビデオカードに複数のヘッドかコネクタがあるときに、個々のモニターに進むときに使用されるオプション設定値です。複数のモニターが1つのビデオカードに接続されている場合には、それぞれのモニターについて別個のDeviceセクションがなければならず、それぞれのDeviceセクションのScreen値は違っていなければなりません。このオプションが受け入れる値は、ビデオカードのヘッドごとに0で始まり1ずつ増える数値です。

  • VideoRam ビデオカードで利用できるRAMの量で、単位はキロバイトです。XFree86サーバーはビデオカードをプローブしてビデオRAMの量を自動検出できるので、この設定値は通常は必要ありません。ただし、XFree86が正しく自動検出できないハードウェアがいくつかあるので、このオプションを使用してマニュアルでビデオRAMの正確な量を指定してください。

DRI

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

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

Files

XFree86サーバー起動時に使用される特定ファイルにXFree86サーバーをポイントします。これらのファイルには、サーバーが必要とする特定サービスに関する情報が含まれています。最も一般的なオプションは、以下のとおりです。

  • FontPath XFree86サーバーがフォントを見つけられる場所を設定します。フォントファイルを保持するディレクトリへのさまざまな固定パスを、カンマで区切ってここに入れることができます。ただし、デフォルトでは、Red Hat Linuxはフォントサーバーとしてxfsを使用し、FontPathunix/:7100にポイントします。これにより、プロセス間通信にUNIXドメインソケットを使用して、フォント情報を入手するようにXFree86サーバーに指示します。

    XFree86やフォントの詳細については、フォントを参照してください。

  • ModulePath XFree86サーバーがロードしたモジュールを保存するために使用する複数のディレクトリをセットアップすることができます。

  • RgbPath システムのどこにRGBカラーデータベースがあるかをXFree86サーバーに伝えます。このデータベースファイルは、XFree86内のすべての有効なカラー名を定義し、それらを特定のRGB値と結び付けます。

InputDevice

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

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

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

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

Module

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

Monitor

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

警告警告
 

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

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

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

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

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

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

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

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

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

Screen

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

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

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

  • Identifier ServerLayoutセクションが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セクションでは、次のオプションを使用します。

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

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

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

詳細については、XF86Configのmanページを参照してください。詳細なオプションの総合一覧が記載されています。

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