Linux Zaurusのパーティション変更

SL-3100(4GBマイクロドライブ)を16GBのCFカードに換装したので、パーティション設定を行った。

いろいろなブログに記載があるが、データなどのバックアップはきちんと行ってから作業すべきだと思った。特に、NANDのバックアップは重要。現在はWEB上に各機種用のものがあるが、いつなくなるかわからないし。。。

以下のような手順で行った。なお、私は必要なデータがなかったため、バックアップを全く取らずに作業を行った。

NANDのバックアップ

(実は、私は、この作業は行っていない。必要なデータがSL-3100に入っていなかったため)

Service Menuを利用する。Service Menuを起動するには、バッテリとAC電源を外す。

256MB以上の空きのあるSDカードまたはCFカードを差し込む。(今時、どこにでも転がってるかな?)

「D」と「M」を同時に押したまま、AC電源を接続する。

Service Menuが立ち上がる。

ページを切り替えて、「BACKUP RESTORE MENU」をタッチし、バックアップ作業を行う。バックアップ先はもちろん、差し込んでいるSDもしくはCF。

パーティション設定

メンテナンスカーネルで作業を行う。メンテナンスカーネルで起動すると、内蔵HDD(私の場合はCF)がマウントされないまま起動する。SDやCFを差し込んだ状態で起動すると、それらはマウントされる。

バッテリ蓋のロックを外し、リセットスイッチを押す。バッテリ蓋を元に戻し、「D」と「B」を同時に押したまま、電源を入れる。

login:

画面になるので、rootと入力する。rootにパスワードを設定している場合は恐らく、パスワードを入力する必要がある。

この時点で、シェルプロンプトになる。内蔵ディスクがマウントされておらず、かつfdiskコマンドが使用できるので、パーティションの設定ができる。内蔵ディスクは/dev/hdaとして認識されている。

fdiskは、Linuxの通常のものと使い方が変わらないので、ここでは記述を省略する。一旦全パーティションを削除し、好きなように作成しなおす。なお、/dev/hda1はシステムが入れられ、read onlyでマウントされるので、大きなパーティションとして作成しない方がよい。せいぜい200MBくらいか。また、/dev/hda3のパーティションタイプをFAT32にしておく必要がある。"t"コマンドで、パーティションタイプを"c"にすればよい。

Zaurusのシステム上、少なくともプライマリパーティションを3つ。/dev/hda1と/dev/hda2はext3でmkfsする必要がある。また、/dev/hda3はFAT32でmkfsする必要がある。具体的には、

# mkfs.ext2 -j /dev/hda1
# mkfs.ext2 -j /dev/hda2
# mkdosfs -F 32 /dev/hda3

これが終わったら電源を切る。次の作業のために、リセットスイッチを押しておく。

NANDバックアップの復旧

NANDバックアップで保存しておいたバックアップを使用して、復旧作業を行う。

なお、これがなくても、こんなところに各機種用のオリジナルNANDがあるので、私はこれを使用しておこなった。

手順は、バックアップの代わりにリストアする感じ。

アップデート

アップデートを行うことで、/hdd1の内容も復旧される。ただし、スペシャカーネルを使用していた場合元に戻ってしまうので、再度インストールする必要がある。

ザウルスサポートステーションにアップデータがあるので、これを適用する。