Sophere / Vine on X40

Vine on X40

1. はじめに

このページはThinkPad X40 2371-Q3JにVine Linux 4.0をインストールしたときのメモである。X40本体とUSBフラッシュメモリとネットワークだけの環境で、無駄な時間をかけずにインストールを行うことに成功した。外付けのドライブやウルトラベース、Windows XPのリカバリ等は不要である。

当然のことながら、ここに書いてある方法が必ず成功するとは限らないし、間違いが含まれている可能性もある。特にパーティションの操作等が含まれるので、完全な自己責任で行うこと。

2. パーティションの確保

X40で他のOSを導入する際に問題となるのは、大抵の場合は既にWindows XPのパーティションとリカバリ用のパーティションによってハードディスクが占められている点である。パーティションを切り直してWindows XPのリカバリを行えば問題はないのだが、それだとかなり時間がかかってしまう。

ここではntfsresizeというフリーソフトを用いる。データを破壊することなくNTFSパーティションのサイズを変更することができる。予めデフラグを行っておく必要もない。ntfsresizeは単体では起動できないので、ntfsresizeを含むディストリビューションとしてRIPLinuxをUSBフラッシュメモリ(以下、USBメモリと略す)にインストールして使用する。(GPartedLiveUSBは筆者の環境ではうまく起動させることができなかった。)

2.1. RIPLinuxのインストール

インストールによってUSBメモリの内容は上書きされてしまうので、予めUSBメモリのバックアップを取っておく。

まずWindows XPを起動し、RIPLinuxのページの下の方に載っているisox-1.10.exeをダウンロードする。これはZIPの自己解凍書庫になっており、実行するとisox-1.10というディレクトリが作成される。

次にRIPLinuxの同じページから適当なISOイメージ(例えばRIPLinux-1.9.iso (34738Kb))をダウンロードし、先ほどのisox-1.10ディレクトリに移す。isox-1.10ディレクトリに入っているxiso.batを実行すると、ルートディレクトリにriplinuxというディレクトリが作成され、そこにISOイメージの中身が展開される。

最後にUSBメモリを接続し、バックアップを行ったことを確認してから\riplinux\BOOT\MKUSB.BATを実行すると、自動的にUSBメモリのドライブの検索が行われ、起動ディスクが作成される。

2.2. RIPLinuxの起動とパーティションの操作

USBメモリを挿したままX40を再起動させ、ThinkPadのロゴ画面でF12を押してUSBブートを行うと、RIPLinuxの起動メニューが出てくるので、適当なものを選ぶ。RIPLinuxが起動した後、コマンドラインからntfsresizeを実行する。Windows XPが/dev/hda1にインストールされているとして、これを30Gバイトに縮小するには

# ntfsresize -n -s 30000M /dev/hda1
# ntfsresize -s 30000M /dev/hda1
とする。1回目はチェックだけを行い、2回目は実際に変更を行う。

これだけではパーティションテーブルは書き換えられないので、さらにfdiskを用いる。即ち、hda1を一旦削除し、改めて30Gのサイズを持つNTFSパーティションとして作り直すのだが、詳細は\riplinux\BOOT\DOC\RIPLINUXを参照されたい。(そこに載っているshrinkntfsはリカバリ用パーティションがあるために使用できないと思われる。)

最後にWindows XPが起動することを確認すれば、パーティションについては設定完了である。(Windows XP起動時にchkdskが行われるが、問題ない。)

3. Vine Linuxのインストール

パーティションの切り直しさえ出来てしまえば後は何とでもなるのだが、ここではUSBメモリから起動してFTPインストールを行う。

3.1. USBメモリの準備

ここではWindows XP上でSYSLINUXを用いてUSBメモリをブートディスクに仕立てる。

まずVine Linuxを配布している適当なFTPサイト/pub/linux/Vine/Vine-4.0/i386/isolinux/ (リンク先はring.asahi-net.or.jp)にある全てのファイルをUSBメモリのルートにダウンロードし、isolinux.cfgをsyslinux.cfgにリネームする。syslinux.cfgの中の

label local
  localboot 1
という部分はSYSLINUXでは認識されず(localbootが使えない)、"Unknown keyword in syslinux.cfg."というメッセージが表示される。そのままにしておいてもインストールには差し支えないが、気になるようなら削除しておく。

次にSYSLINUXの適当なパッケージ (現時点(2006/11/25)での最新版はsyslinux-3.31.tar.gz)をダウンロードして展開する。その中のwin32ディレクトリにあるsyslinux.exeを、例えばUSBメモリのドライブがdだとすると、

> syslinux d:
のようにして実行すればブートディスクの作成は完了である。

3.2. インストール

X40を再起動し、F12を押してUSBメモリから起動すればVine Linuxのインストール画面になる。

FTPインストールを行うには、まず「インストール方法」で「FTP」を選択し、「IPの設定」を適宜行う。DHCPを使えるようにしておけば楽である。次に「FTPの設定」で「FTPサイト名」には適当なFTPサイト(例えばring.asahi-net.or.jp)を指定し、「Vine Linuxディレクトリ」には/pub/linux/Vine/Vine-4.0/i386を指定する。

後は通常のインストールと同じである。

4. SSD換装

(この節は2010年5月に追加。)

思い立って、ハードディスクをSSDに換装し、Windows XPとVine Linux 5.1をクリーンインストールすることにした。以下はラフな作業記録であって、他の環境で同様に換装できるかどうかは分からない。

SSDは現時点での性能・実績の観点から、Indilinx社のBarefootコントローラを搭載した製品に候補を絞り、X40でそのまま使える日立型のコネクタを具えた64GBのものを購入した。この製品にはUSBインターフェースとクローンソフトが付属してくる。

まずはSSDをUSB経由で接続し、ハードディスクをコピーする。付属のクローンソフトは何故かうまく動かなかったので、EASEUS Todo Backupを利用した。SSDの方が若干容量が大きく、リカバリ領域の後ろに空き領域ができるので、さらにPartition WizardのHome Editionを用いてリカバリ領域を一番後ろに移動した。

次にSSDからRescue and Recoveryを起動して再インストールを行いたいのだが、GRUBのせいか、通常の方法ではR&Rを起動させることができなかった。対策としては、Partition Wizardを使うなどしてリカバリ領域のパーティションタイプを0x12から0x0Cに変更し、さらにアクティブにすればいいらしい。この状態でハードディスクをSSDに換装して起動するとGRUBのコマンドラインになるので、

grub> root (hd0,3)
grub> chainloader +1
grub> boot
とすればR&Rが起動する。ここで(hd0,3)の3はリカバリ領域の番号であり、環境に合わせて適切な値を指定する。

R&Rが起動すれば後は簡単で、まずはWindows XPの再インストールを行う。途中何回か再起動が必要になるが、先ほどと同様の手順でインストール先のパーティションを指定して起動させる。次にVine Linux 5.1のインストールを行うが、これは3節の方法で可能である。

5. 更新履歴

2006/7/15
2006/11/25
2010/5/10