ブログネタ
Desktop Linux 入門 に参加中!
私のこのリナックスblogの記事で一番アクセスの多い記事が、
画面ディスプレイの解像度1024×768に変えよう。 on Fedora Coreです。
やはり、解像度の変更は難しい。

特に最近は、今時のLinuxの画面ディスプレイの解像度の変更 for Fedora 12 13 14 and Ubuntu 10.10 10.04 9.10でも、触れたように画面の解像度はカーネルのドライバの開発進行度によるようです。

ですが、Maxの画面解像度に変更できる方法が分かりましたので報告♡
ただし、この方法を用いた場合はcompizGNOME-Shellなどの3Dデスクトップ機能は使えませんのでご注意を。

手順としては、

  1. system-config-displayのインストール

  2. vesaの選択

  3. nomodesetで起動



system-config-displayのインストール



Fedora 14には、system-config-displayが入っていません。Fedora 14のリリースまでに間に合わなかったようです。ですが、非公式ながら以下からダウンロードできます。Fedora 13より前であれば、

yum install system-config-display

でインストールできます。
Fedora14をお使いであれば、http://koji.fedoraproject.org/koji/packageinfo?packageID=264から最新のsystem-config-displayをダウンロードします。(32bitか64bitか注意して)
Firefoxでダウンロードした場合は、そのままパッケージマネージャで開くか尋ねられるので、そのままインストールします。

vesaの選択



Fedora 10ぐらいからxorg.confなしに自動で画面解像度を設定します。ドライバも自動で選択されます。ですが、そのドライバでは十分高い画面解像度が得られるとは限らないのが現状です。その場合、
VESA
ビデオ周辺機器に関する業界標準化団体
が提供するドライバを使いましょう。
GNOMEデスクトップの[システム]→[管理]→[ディスプレイ]でsystem-config-displayを起動します。
Screenshot-ディスプレイ設定

[ハードウェア]を選択します。
Screenshot-ディスプレイ設定-1-hardware

[ビデオカード]の[設定]を選択します。
Screenshot-ディスプレイ設定-2-config-video-card

[vesa - Generic VESA-compliant video cards]を選択します。
Screenshot-3-ビデオカード

[OK]を押して、/etc/X11/xorg.confを設定しました。Xサーバーを再起動してください。と言われたら設定終了です。

私の環境での/etc/X11/xorg.confを公開して置きます。

# Xorg configuration created by system-config-display

Section "ServerLayout"
Identifier "single head configuration"
Screen 0 "Screen0" 0 0
InputDevice "Keyboard0" "CoreKeyboard"
EndSection

Section "InputDevice"

# keyboard added by system-config-display
Identifier "Keyboard0"
Driver "kbd"
Option "XkbModel" "jp106"
Option "XkbLayout" "jp"
EndSection

Section "Device"
Identifier "Videocard0"
Driver "vesa"
EndSection

Section "Screen"
Identifier "Screen0"
Device "Videocard0"
DefaultDepth 24
SubSection "Display"
Viewport 0 0
Depth 24
EndSubSection
EndSection


nomodesetで起動


コマンド、su -c "init 3 && init 5"でXサーバーを再起動できますが、3Dデスクトップ機能を持ったディスプレイでは、kmsカーネルモードセッティングの機能が働き、画面がぐちゃぐちゃに表示されます。ですので、このカーネルモードセッティングをOFFにしましょう。
それには、/etc/grub.confkernelの行の最後に半角スペースを空けて、nomodesetと入力してください。
例として2011年 1月 29日 土曜日 12:01:20 JST現在の/etc/grub.conf設定状況を表示しておきます。

title Fedora (2.6.35.10-74.fc14.i686)
root (hd0,1)
kernel /vmlinuz-2.6.35.10-74.fc14.i686 ro root=/dev/mapper/VolGroup-lv_root rd_LVM_LV=VolGroup/lv_root rd_LVM_LV=VolGroup/lv_swap rd_NO_LUKS rd_NO_MD rd_NO_DM LANG=ja_JP.UTF-8 KEYBOARDTYPE=pc KEYTABLE=jp106 rhgb quiet nomodeset
initrd /initramfs-2.6.35.10-74.fc14.i686.img

実際は、カーネルのバージョン、パーティションの設定などでカーネルの起動オプションが異なるので注意してください。基本的には、kernelの行末にnomodesetを追加するだけで良いはずです。

後は、再起動してみて下さい!!
どうでしょうか?うまく高解像度になったでしょうか?
うまく行かない場合は、コメント、つぶやきへなど気軽に質問してくださいな♪

参考:
今からはじめるLinux (日経BPパソコンベストムック)
Linuxでなんでも復活させる本 (日経BPパソコンベストムック)