主にサーバ用途で利用されることの多いFreeBSDですが、Windowsと比較して遜色ないデスクトップ環境を構築することも可能です。
但し、先に言及しておきますが、正直なところFreeBSDはLinuxに比べ、マルチメディア関係のアプリケーションの対応があまりよくありません。
これはひとえに、Flash PlayerやRealPlayer等のマルチメディア系のプレイヤが、Linuxには対応しているがFreeBSDには対応していないことに起因しています。
もちろん、FreeBSDでも、Linuxエミュレータを利用してこれらのソフトウェアを動作させることはできますが、特にOSにこだわりがないのであれば、UbuntuやFedoraあたりのLinuxをご利用になることをお勧めします。
それでも、という方のために、このページではX Window Systemである「X.org」と、軽量なデスクトップ環境である「xfce」を利用して、Windowsライクなデスクトップ環境のベースを構築する方法について説明します。
まず、デスクトップ環境を構築するために必要なソフトウェアのmakeおよびインストールを行います。
まず、デスクトップ環境の核となる「X.org」をインストールします。
以下の手順でX.orgをportsから導入してください。
portsの取得および展開方法については、「最新のportsを取得して展開する」を参照してください。
$ cd /usr/ports/x11/xorg $ make config-recursive $ make install clean
make時にも注意喚起されますが、xorgの構築にはHDDに2GB程度の空き容量が必要になります。
また、構築には膨大な時間が掛かりますので(手元のPentium III 866MHzのマシンで丸二日程度)、ロースペックなマシンでportsからコンパイルする場合には、暫くの間放置する勇気と、それを許す周りの環境が必要です。
また、X.org 7.4からはX.orgの標準ディスプレイマネージャ「XDM」およびセッションマネージャ「XSM」がX.orgのportsに含まれなくなりましたので、これらもportsから導入しておきます。
$ cd /usr/ports/x11/xdm/ $ make config-recursive $ make install clean
$ cd /usr/ports/x11/xsm/ $ make config-recursive $ make install clean
X.orgのインストールが完了したら、次は日本語のフォントをインストールします。
デフォルトの状態でも日本語フォントはインストールされているのですが、等幅でビットマップなフォントで、お世辞にも綺麗といえない為、別途インストールしたほうがよいです。
以前は、フリーで綺麗なフォントというのはなかなかなかったのですが(「東風フォント」というのがあったのですが、ベースにしたフォントのライセンス問題で2003年10月に制作・配布終了となりました)、2004年 7月に情報処理推進機構(IPA)が「地理情報システム(GRASS)」の一部として、「IPAフォント」と呼ばれるライセンスの緩いフォントを公開したことにより、OSSではこのフォントが広く使われるようになりました。
今回構築する環境でも、このIPAフォントを導入することにします。
IPAフォントもportsからインストールします、以下の手順でインストールしてください。
$ cd /usr/ports/japanese/font-std $ make config-recursive $ make install clean $ cd /usr/ports/japanese/font-mplus-ipa $ make config-recursive $ make install clean
尚、日本語フォント関連のportsは、2009/06初旬に大規模な整理が行われ、portsの名称が大幅に整理されています。
詳しくは後藤大地さんのFreeBSD Daily Topicsの「FreeBSD Daily Topics:2009年6月1日 ≪注目≫日本語フォント関連一斉変更 - ipa-ttfontsからfont-stdへ (内容比較表あり)|gihyo.jp … 技術評論社」をご参照ください。
続いて、軽量なデスクトップ環境である「xfce」をインストールします。
やはりxfceもportsとして提供されていますので、以下の手順でportsからインストールしてください。
$ cd /usr/ports/x11-wm/xfce4 $ make config-recursive $ make install clean
「make config-recursive」を行うと、メニュー形式でいくつかの設定項目が表示されますが、「DBUS」および「FAM」(File Alternation Monitor)関連の項目については、必ず有効にするようにしてください。(ほとんどの場合、デフォルトでチェックが入っています)
前者はX.orgがデバイスを制御するのに必要な機能で、これを有効にしないと、xfce4自体が起動しません。
また、後者はファイルに対する変更(新規作成や削除を含む)をモニタする機能で、これを有効にしないと、ディスクトップに新規作成したファイルのアイコンが表示されなかったり、削除されたファイルのアイコンが表示されたままになったります。
尚、xfce4の構築もxorgの構築と同じぐらい時間が掛かりますので、ご注意ください。
必要なportsのインストールが完了したら、次にそれぞれのソフトウェアの設定を行います。
まずはじめに、X WINDOW SYSTEMが利用するデバイスの設定を行います。
下記のように入力して、X.orgの設定ファイルである「xorg.conf」を自動生成します。
$ Xorg -configure
上記のようにするとデバイスが自動検出され、その内容が「xorg.conf.new」として書き出されます。
生成された「xorg.conf.new」はユーザのホームディレクトリに保存されますので、これを「/etc/X11/xorg.conf」として保存してください。
X.org 7.4から、キーボードおよびマウスを含む殆どのデバイスがHAL経由で制御されるようになりました。
また、X.orgを正常に動作させるためには、dbusやPolicyKit等のdaemonも必要なので、システム起動時にこれらのdaemonが動作するよう、「/etc/rc.conf」に以下の記述を追加します。
dbus_enable="YES" hald_enable="YES" polkitd_enable="YES"
設定完了後、システムを再起動することにより、これらのdaemonが動作するようになります。
システム再起動後、kernelを独自に構築している場合等に以下のメッセージが表示されることがあります。
xptioctl: pass driver is not in the kernel xptioctl: put "device pass" in your kernel config file
このままの状態ですと、HALが正常に動作しないため、メッセージの通りkernelコンフィグファイルに「device pass」の記述を追加し、kernelを再構築してください。
X WINDOW SYSTEMでのデフォルトのキーボード配列は英語になっているので、これをあらかじめ日本語に変更しておきます。
具体的には「/usr/local/etc/hal/fdi/policy/10-x11-kbd.fdi」というファイルを作成し、以下の内容を記述します。
<?xml version="1.0" encoding="ISO-8859-1"?> <deviceinfo version="0.2"> <device> <match key="info.capabilities" contains="input.keyboard"> <match key="info.udi" string="/org/freedesktop/Hal/devices/atkbd_0"> <merge key="input.x11_options.XkbRules" type="string">xorg</merge> <merge key="input.x11_options.XkbModel" type="string">jp106</merge> <merge key="input.x11_options.XkbLayout" type="string">jp</merge> <merge key="input.x11_options.XkbOptions" type="string">ctrl:nocaps</merge> </match> </match> </device> </deviceinfo>
上記の通り、X.org 7.4からはキーボードの制御もHAL経由となっているため、「/etc/X11/xorg.conf」を編集する従来の設定方法とは違う点に注意してください。
設定後、下記の通り入力することにより、X WINDOW SYSTEMを起動することが出来ます。
$ startx
X WINDOW SYSTEMを起動させるのに、ログイン後「startx」と入力するのは、あまりスマートではないため、FreeBSDの起動完了後に、GUIのログイン画面を出すように設定変更します。
先ほどportsから導入したディスプレイマネージャ「XDM」がシステム起動時に自動的に呼び出されるよう、コンソール関係の設定ファイル「/etc/ttys」を下記の通り編集してください。
ttyv8 "/usr/X11R6/bin/xdm -nodaemon" xterm off secure
ttyv8 "/usr/local/bin/xdm -nodaemon" xterm on secure
編集後、システムを再起動させると、XDMのログイン画面が表示されるようになります。
ログインスクリプトの不備等で、コンソール画面での作業が必要な場合には、[Ctrl]+[Alt]+[F1]を同時に押してコンソール画面に切り替えてください。
次に、各ユーザがXDMでログインした際に、xfce4のウインドウマネージャが起動するように、各ユーザごとに「.xsession」を以下のように作成します。
#!/bin/sh export LANG=ja_JP.eucJP sleep 3 exec startxfce4
作成した「.xsession」は、各ユーザのルートフォルダにおいてください。
続いて、各ユーザがxfce4の画面上からマシンをrebootまたはshutdownできるように、PolicyKitの設定を行います。
デフォルトの状態では、rootのみに全アクションが許可されていますので、特定のユーザに対して再起動/シャットダウンを許可する場合には、「/usr/local/etc/PolicyKit/PolicyKit.conf」の「<match user="root"></match>」の後に、下記の記述を追記してください。
<match user="アクションを許可するユーザ名"> <return result="yes"/> </match>
分かり辛いかもしれませんが、「/usr/local/etc/PolicyKit/PolicyKit.conf」はXMLで記述されています。
上記記述は、必ず「<match user="root"></match>」と同じ階層に記述するようにしてください。
X.orgについては、以下の設定を行うことにより、パフォーマンスを向上させることが出来ます。
「/etc/sysctl.conf」に以下の記述を追記してください。
kern.ipc.shmmax=67108864 kern.ipc.shmall=32768
X.orgおよびxfce4本体に関する設定は以上ですが、より良いデスクトップ環境を構築するには、日本語入力環境やブラウザ、メーラ、メディアプレイヤー等の整備が必要になります。
これらの設定方法についても説明していますので、以下の各ページをご参照ください。
・ 日本語入力環境を構築する(scim/anthy)
・メディアプレイヤー「VLC」の利用方法の説明ページへのリンクを追加。
・フォント全般のportsが変更されたため、それにあわせて構築するports名を修正。
・キーボードの設定で、編集対象をファイルが「/usr/local/etc/hal/fdi/policy/10-x11-kbd.fdi」なのに誤って「/etc/rc.conf」と記述していた誤記を修正。(ご指摘頂いた方、ありがとうございます!)
・頂いたメッセージは管理者のチェックの後、公開されます。
・メッセージの公開を希望されない場合には、「このメッセージを非公開にする」にチェックを入れてください。
・管理者が不適切と判断したメッセージは公開しませんので、予めご了承ください。
まだ評価がありません |
表示できるメッセージはありません。