tabimoba.net

とあるエンジニアの雑記帳

工人舎PM1へ軽量テキスト編集・Web閲覧環境を構築する


PM1は工人舎が販売している(販売していた)非常に小さなWindows XP機です。本機ではWindows XPを使うことができますが、性能がかなり低いため、パフォーマンスや起動までの待ち時間が気になることがあります。
そこで、今回LinuxのCUI(CLI)環境で、PM1上へ軽量テキスト編集・Web閲覧環境を構築してみました。
Windowsと比較すると、ビジュアル面では劣りますが、テキスト編集や簡単なWebの閲覧であればほとんど困ることはありません。起動も終了も非常に早く、CUIで利用している分OS自体も非常に軽快に動作します。何より、マルチウインドウでなく、1画面表示が基本となりますので、文書作成に集中したい場合なんかにはもってこいです。
万人にお勧めできる環境ではありませんが、軽快な環境を探している方におすすめします。
今回、その設定メモをまとめてみました。詳しくは、以下の通りです(続きをご覧ください)。

パーティションの確保

Linuxをインストールするにはパーティションを確保しておく必要があります。GPartedを利用して、インストールに必要なパーティションを確保します。
まず、GPartedからLiveCDまたはLiveUSBイメージをダウンロードし、CDあるいはUSBメモリへ書き込みます。
次に、GPartedを起動し、Linuxのインストールに必要となるパーティションを分割します。CUI環境で利用するのであれば、2.5GB〜3GB(Linux領域1.5〜2GB,Swap領域1GB)程度で問題有りません。

OSの入手とインストール

今回は、Debian GNU/Linux 6.0.2-1(squeeze)をインストールすることにします。
まずはDebianのWebサイトか、ミラーサイトから、i386版のdebian-6.0.2.1のISOイメージを全てダウンロードします。
通常はnetinst向けのISOイメージをダウンロードすれば事足りるものですが、PM1にはインストール時点で有効なネットワーク接続手段がありませんので、面倒でもISOイメージからパッケージをインストールしていく方が簡単かつ確実です。
なお、DVDイメージの場合はDVD8枚分になり、回線によってはダウンロードに結構時間が掛かります。また、全てのディスクを作成するのに約1時間半〜2時間程度かかります。仕方ないので、気長に待ちましょう。
Debianのインストール方法については、ここでは割愛します。基本的には、通常のPCへDebianをインストールする手順と変わりません。

日本語の表示

jfbtermとxfonts-unifontをapt-getでインストールしましょう。

# apt-get install jfbterm xfonts-unifont

ただし、これだけでは日本語表示が行えませんので、次にgrubの設定を変更します。
それぞれの以下のファイルを編集します。

/etc/default/grub

GRUB_GFXMODE=640x480→GRUB_GFXMODE=1024x600へ変更します。

/etc/grub.d/00_header

127行目の set gfxmode= の後に以下の記述を加えます。

set gfxpayload=keep

以上の設定後、update-grubを実行し、再起動します。
再起動後、jfbtermを実行すると、日本語表示が行えるようになります。

有線LAN

PM1には有線LANがありませんので、USB-LANアダプタを使うことにします。
今回は、amazonで580円で売られていた、ロジテック LAN-TX/U1H2を使うことにしました。内蔵のUSBハブがUSB1.1な点がちょっとアレですが、安いので気にしないことにします。

Logitec USBハブ搭載USB1.1有線LANアダプタ LAN-TX/U1H2

Logitec USBハブ搭載USB1.1有線LANアダプタ LAN-TX/U1H2

  • 発売日: 2005/11/20
  • メディア: Personal Computers
しかし、Debianでは残念ながらLAN-TX/U1H2向けのドライバがありませんので、以下の手順でWindows向けのドライバを使うことにします。

  1. ドライバ & マニュアル(取扱説明書)ダウンロード - LANアダプタ - LAN-TX/U1H2 - ロジテックから、ドライバをダウンロードします。
  2. ダウンロードしたファイルを解凍し、解凍後に生成されるdrvフォルダ以下のファイルを、USBメモリ等を介してPM1へコピーします。
  3. apt-getでndiswrapper-common,ndiswrapper-utils-1.9,ndiswrapper-dkmsをインストールします。
  4. 先ほどドライバをコピーしたディレクトリ上で、ndiswrapper -i txu1h2.infを実行します。
  5. modprobe ndiswrapperを実行すると、LAN-TX/U1H2が認識します。(wlan0として認識されると思いますが、この辺は機種によって異なりますので、確認してください)
    この後は、ifconfigで通常のLANアダプタと同様に設定を行うか、dhclient wlan0でDHCPサーバからIPアドレスを取得することで、LAN-TX/U1H2でネットワークが利用できるようになります。

無線LANを使えるようにする

MarvelのWebサイトからドライバのダウンロードとインストールが必要となります。

  1. Support - Driver Downloads - Marvellより、ファイルをダウンロードします。
  2. ダウンロードしたファイルを解凍して、helper_sd.bin,sd8686.binというファイルが生成されることを確認します。
  3. helper_sd.binをsd8686_helper.binにリネームして、/lib/firmwareへコピーします。
  4. sd8686.binを/lib/firmwareへコピーします。
  5. iwconfigを実行し、無線LANのインターフェース名を確認します。

無線LANを利用する

※ここでは無線LANのインターフェースをwlan1と想定しますが、どのインターフェースで認識しているかは、前項で確認してください。
まず、以下のパッケージをインストールします。

# apt-get install wpasupplicant wireless-tools

次に、APへの接続に必要となる設定を行います。
/etc/wpa_supplicant/wpa_supplicant.confというファイルを作成し、APの設定に応じて以下のとおり接続に必要となる設定を行います。

WEP128
network={
ssid="APのSSID"
key_mgmt=NONE
wep_key0="WEPキー"
wep_tx_keyidx=WEPキーのインデックス
}
WPA-PSK
network={
ssid="APのSSID"
proto=WPA
key_mgmt=WPA-PSK
pairwise=TKIP またはCCMP
group=TKIP またはCCMP
psk=パスフレーズ
}
WPA2-PSK
network={
ssid="APのSSID"
proto=RSN
key_mgmt=WPA-PSK
pairwise=TKIP またはCCMP
group=TKIP またはCCMP
psk=パスフレーズ
}

設定が完了したら、以下のコマンドを入力します。

# wpa_supplicant -i wlan1 -c /etc/wpa_supplicant/wpa_supplicant.conf -B
# dhclient wlan1

以上で、無線LANへの接続が行えるようになります。

web閲覧環境を用意する

w3mとw3m-imgをインストールすることで、webが閲覧出来るようになります。
また、jfbtermが実行された環境であれば、画像も表示されます。

# apt-get install w3m w3m-img

なお、サイトによってはlynxの方が見やすい場合もありますので、そちらもインストールしておくと良いでしょう。

# apt-get install lynx

テキスト編集環境を用意する

Debianにはインストール当初はvim-tinyがインストールされますが、vim-tinyはvimの機能縮小版のため、これを使わずvimを使うことにします。

# apt-get install vim

日本語入力環境を準備する

テキスト編集やWebの閲覧には日本語の入力が必須ですので、FEPをインストールします。

# apt-get install uim-fep uim-anthy

次に、ctrl+spaceでFEPの切り替えが行えるように、設定を変更します。

# vi /usr/share/uim/generic-key-custom.scm
(define-custom 'generic-on-key '("zenkaku-hankaku" " ")
(define-custom 'generic-off-key '("zenkaku-hankaku" " ")

の箇所を、以下の通り変更します。

(define-custom 'generic-on-key '("zenkaku-hankaku" " ")
(define-custom 'generic-off-key '("zenkaku-hankaku" " ")

以上の設定を行い、uim-fepを実行すると、日本語入力が行えるようになります。

SSHで他のPCから接続出来るようにする

PM1の小さい画面とキーボードだけで設定を続けるのは非常につらいので、SSHで他のPCから接続して作業を行えるようにします。

# apt-get install openssh-server

その他インストールすると便利なパッケージ

以下のパッケージをインストールすると、便利に使えるかもしれません。インストールをおすすめします。

  • screen (仮想コンソールプログラム)
  • wget (ダウンロードプログラム)
  • fdclone (ファイル管理ツール DOSで有名なFDのクローン版)