X Window Systemの覚書
本家はhttp://www.x.orgです。
Debian etchでx.orgの場合, /etc/X11/xorg.confがそれである。
/var/log/Xorg.?.logがそれである。?には数字が入る。
$ su # X -configure
でできる。ただし, Xが立ち上がっていないことが前提。 何がしかの調子が悪くて再設定を行いたい場合はsingle usermodeで 立ち上げるなどする。/root/xorg.conf.newというファイルに結果が 出力される。これを/etc/X11/xorg.confに上書きすればいい。
また, 各ディストリビューションで用意されていることも多い。 Debian etcの場合,
$ sudo dpkg re-configure -phigh xserver-xorg
や
$ sudo dexconf
が使える。dexconfは現在の設定を上書きするので注意。
はるか以前のXFree86の時代はXF86ConfigやXconfigureといった コマンドを使用していた。
設定ファイルのテストは
# X -config ./xorg.conf.new
-configで新しい設定ファイルを指定することでできる。
Xが起動されれば成功。Xからコンソールに戻るときは CtrlとAltとBackspaceを同時に押せばよい。
libretto L3のディスプレイは1280x600と特殊な大きさのため, フレームバッファというものを使用する。 Debian etchの場合2つ設定ファイルを編集するだけだが, linux kernel2.2など 旧いものの場合カーネル構築が必要になることもある。
改めて対象のディスプレイのサイズだが, 1280x600, 16bitカラーでの リフレッシュレートは60Hzだと説明書に書いてある。
以下はDebian etchをLibretto L3にインストールしたときの X.orgの設定である。2つの設定ファイルを編集する。
一つ目の設定ファイルの編集は/etc/X11/xorg.conf。Deviceセクション, Monitorセクション, Screenセクションの3つを編集する。
DeviceセクションではDriverをfbdevにする。完成は下記のとおり。
Section "Device" Identifier "S3 Inc. 86C270-294 Savage/IX-MV" # Driver "savage" Driver "fbdev" BusID "PCI:0:4:0" EndSection
Monitorセクションでは1280x600に対応する周波数などを指定する。 Modelineを追加するのだが, 一体これをどうやって計算するのかは わからない。完成は以下のとおり。
Section "Monitor" Identifier "LibrettoL3" Option "DPMS" HorizSync 31.5-50.0 VertRefresh 50-61 Modeline "1280x600" 60 1280 1328 1512 1712 600 601 603 625 EndSection
最後にScreenセクションを編集。Monitorを編集し, DisplayのModesを編集する。 必要なところだけ抽出した最小の記述は以下のとおり。
Section "Screen" Identifier "Default Screen" Device "S3 Inc. 86C270-294 Savage/IX-MV" Monitor "LibrettoL3" DefaultDepth 16 SubSection "Display" Depth 16 Modes "1280x600" EndSubSection EndSection
全体についてはxorg_conf.html をご参照ください。試行錯誤も入っております。
フレームバッファを用いる場合, 起動時にカーネルにオプションが必要に なる。ここではブートローダーはgrubを使用しているものとする。 単純にmenu.lstのkernel listのkernelオプションにvga=0x405を追加すれば よい。vga=0x405は1280x600で16bitカラーを使うという指定である。 指定したkernel listの例は以下のとおり
title Debian GNU/Linux, kernel 2.6.18-4-486 fbdev root (hd0,0) kernel /boot/vmlinuz-2.6.18-4-486 root=/dev/hda1 ro vga=0x405 initrd /boot/initrd.img-2.6.18-4-486 savedefault
最後に再起動して試せばよい。失敗した場合はsingle usermodeで 起動しなおして再設定を行う。
ここの設定については以下のページを参考にさせていただきました。 感謝いたします。