FreeBSD Daily Topics
2009年3月16日 ≪Tips≫linux_base-f8をインストールして使う方法(日本語ロケール設定,日本標準時設定あり)≪注目≫AsiaBSDCon2009開催報告・勉強会告知
tips
- How to setup linux_base-f8
tips - 最新のSkypeやFlash9を使う場合,まだデフォルトに置き換わっていないemulators/linux_base-f8を使う必要があります。現状ではいくつか設定のポイントがありますので説明しておきます。
〔compat.linux.osreleaseの値〕
8-currentの最新版を使って入ればsysctl値compat.linux.osreleaseはすでに『2.6.16』になっていますが,そうでない場合はcompat.linux.osreleaseを『2.6.16』に設定する必要があります。起動しても設定がクリアされないようにするには,/etc/sysctl.confに設定を追加してcompat.linux.osreleaseの値が『2.6.16』になるように設定します。システムを再起動しないで即時設定を変更したい場合は「sysctl compat.linux.osrelease=2.6.16」のようにコマンドを実行します。コマンドを実行しても再起動すると元に戻りますので,/etc/sysctl.confに書き込むのは忘れないようにしてください。
compat.linux.osrelease sysctl値を2.6.16に設定する例
compat.linux.osrelease=2.6.16〔OVERRIDE_LINUX_BASE_PORT〕
Ports Collectionでlinux_base-f8を使うことを示すためにOVERRIDE_LINUX_BASE_PORT=f8を指定する必要があります。/etc/make.confに次のような設定を追加しておきます。
/etc/make.confに追加する設定
OVERRIDE_LINUX_BASE_PORT?=f8〔linux_base-f8 install〕
/usr/ports/emulators/linux_base-f8/からlinux_base-f8をインストールします。
linux_base-f8をインストール
# cd /usr/ports/emulators/linux_base-f8/ # make install clean/etc/rc.confにLinuxバイナリ互換機能を有効にするための次の設定を追加します。
Linuxバイナリ互換機能を有効にするための設定
linux_enable="YES"〔linprocfs〕
次のようにLinuxプロセスファイルシステムをマウントするための設定を/etc/fstabに追加します。
Linuxプロセスファイルシステムをマウントするための設定
linprocfs /compat/linux/proc linprocfs rw 0 0システムを再起動するか「mount linprocfs; /etc/rc.d/abi start」のようにLinuxプロセスファイルシステムをマウントし,さらにLinuxバイナリ互換機能を有効にします。
〔ja_JP.UTF-8 locale〕
次のようにlocaledefコマンドを実行してja_JP.UTF-8ロケールが機能するようにします。
localedefコマンドでja_JP.UTF-8ロケールが機能するように設定
/usr/compat/linux/usr/bin/localedef -i ja_JP -f UTF-8 ja_JP.UTF-8〔JST timezone〕
日本標準時が使われるようにタイムゾーンデータからTokyoのデータを取り出して/usr/compat/linux/etc/localtimeファイルとしてコピーします。たとえばtzdata-2008i-1.fc8.noarch.rpmをダウンロードしてくるとして,次のように操作してTokyoファイルを/usr/compat/linux/etc/localtimeファイルとしてコピーします。
日本標準時が使われるようにタイムゾーンデータをコピー
# rpm2cpio tzdata-2008i-1.fc8.noarch.rpm | cpio -idv | grep Tokyo ./usr/share/zoneinfo/right/Asia/Tokyo ./usr/share/zoneinfo/posix/Asia/Tokyo ./usr/share/zoneinfo/Asia/Tokyo 4067 blocks # cp ./usr/share/zoneinfo/Asia/Tokyo /usr/compat/linux/etc/localtime〔動作例 - Skype〕
Linuxアプリケーションの動作例としてSkype (net/skype)を実行します。UIのフォントに設定した適切なフォントが使われていること,SCIM-Anthyなどを経由した日本語入力が可能なこと,時刻がFreeBSDの時刻と同期していることを確かめてください。
日本語フォントが汚い場合や日本語入力ができない場合,時刻が9時間ずれている場合には〔ja_JP.UTF-8 locale〕や〔JST timezone〕の作業に失敗している可能性があります。タイムゾーンはfc4を使う場合にはFreeBSDのタイムゾーンと同期しますが,これは使っているタイムゾーンファイルのフォーマットが同じであるため,/etc/localtimeが適用されるからです。
8-currentでは今後タイムゾーンファイルのフォーマットが2008年形式にアップされるか,またはf8でタイムゾーンをインストールするようにするか何らかの形で対処が行われる見通しなので,将来的には〔JST timezone〕の作業は不要になってくると見られます。ただし現状ではこの作業が必要です。
〔簡易スクリプト〕
毎回同じ処理をするのは面倒なので,linux_base-f8をインストールしたら実行するスクリプトを作成しておくと便利です。たとえば次のようなスクリプトを用意しておきます。タイムゾーンファイルはTokyoだけとりだしてどこかに用意しておくものとします。最後の方のcp(1)コマンドのところを書き換えて使ってみてください。
linux_base-f8をインストールしたら実行するスクリプト例
#!/bin/sh # path configuration basedir=$(realpath $(dirname ${0})) packagesdir=${basedir}/packages post() { if [ -z "$(grep ^linprocfs /etc/fstab)" ] then echo "linprocfs /compat/linux/proc linprocfs rw 0 0" >> /etc/fstab fi if [ -z "$(grep ^linux_enable /etc/rc.conf | grep -i YES)" ] then echo 'linux_enable="YES"' >> /etc/rc.conf fi if [ -z "$(mount | grep linprocfs)" ] then mount linprocfs fi /etc/rc.d/abi start /usr/compat/linux/usr/bin/localedef -i ja_JP -f UTF-8 ja_JP.UTF-8 cp "${packagesdir}"/zoneinfo-Tokyo /usr/compat/linux/etc/localtime } type "${1:-post}" > /dev/null 2>&1 && "${1:-post}"
event
- AsiaBSDCon 2009
conference - 3月14日(土),15日(日)にAsiaBSDCon 2009のメインとなるカンファレンス(論文発表,基調講演,特別講演,バンケットや交流)が開催されました。OpenBSDのTheo de Raadt氏やsendmailのEric Allman氏の講演,最新技術の紹介や検討,*BSD関係者との交流などが実現できた貴重なイベントだったといえます。BSDA検定の実施や日本語チュートリアルの実施など新しい試みもおこなわれました。AsiaBSDCon 2009のレポートはgihyo.jpや『Software Design』でまとめます。ぜひともお見逃しなく :)
gihyo.jpではこうしたフェイス・トゥー・フェイスで交流が持てる機会を活かしていこうと,2009年4月から月1回ほどの周期を目処に*BSD勉強会の実施を計画しています。勉強会を通じて*BSDに関する技能や知識を伸ばすとともに,ユーザ・開発者・企業さまが交流を持てる場としての役割をはたしていきたいと考えております。詳細はおってgihyo.jpやFreeBSD Daily Topicsで紹介します。こちらもお見逃しなく!
FreeBSD Daily Topics
- 2009年3月30日 4/2のjus勉強会でPorts Collection発表,FreeBSDにRAID5登場 - 最新版Gvinumマージ,DELL BMC/IPMI機能をLinuxツールから操作可能に他
- 2009年3月27日 eAcceleratorでPHP高速化,Hammer FSをLinuxへ移植,NVIDIA OpenGL 3.0/3.1 for FreeBSD,KDEリポジトリPC-BSDへ移動
- 2009年3月25日 カーネルパニックを実現する脆弱性と,Jailブレイクやセキュリティ機能バイパスにつながる脆弱性
- 2009年3月24日 Amarok2ビルド方法とトラブルシューティング
- 2009年3月19日 FreeBSD 7.2-RELEASEのスケジュール公開 5月4日にリリース予定,FreeBSD 8.0-RELEASEは8月以降にずれ込む見通し
- 2009年3月17日 Tomahawk Desktop OS - FreeBSDベースへ転身,ソフトウェアRAID5機能1,2週間後にcurrentにマージ
- 2009年3月16日 ≪Tips≫linux_base-f8をインストールして使う方法(日本語ロケール設定,日本標準時設定あり)≪注目≫AsiaBSDCon2009開催報告・勉強会告知
- 2009年3月12日 IGMPv3/SSM機能登場,マルチパスフェールオーバクラスタノード向け新しいiSCSI target istgt登場,ATI Radeon R600/R700対応コードカーネルにマージ(2D描画高速化),Amarok 2登場,Monkeysphere登場
- 2009年3月11日 木曜と金曜はAsiaBSDCon2009チュートリアル 当日参加も,FreeBSD Diskスケジュール機能更新 広く試験募集,MythTVアップグレード方法他
- 2009年3月10日 QEMU 0.10.0登場,KDE 4.2.1登場,Samba 3.3登場,Firefox/Opera/PHPセキュリティ対応,YouTube BSDチャンネル追加他
-
Acroreadとflashpluginは、ja_JPロケールと不仲?
FreeBSD 7.1-RELEASE-p1/i386, linux_base-f8-8_11の組み合わせでは、
/usr/compat/linux/usr/bin/localedef -i ja_JP -f UTF-8 ja_JP.UTF-8
としてしまうと、ja-acroread8-8.1.3_1 と linux-flashplugin-9.0r159 が正常に動作しなくなる(あるいは異常に時間がかかる)ようです。このため、Firefoxでこれらのプラグインを使用したページを訪れてしまうと、プラグインが表示できないだけでなく、ページの表示に異常に時間がかかるようになるようです。Commented : #1 KYokota (2009/03/19, 20:05)

