以下、zaurusで2GBのSDをFATとext2にぶった切る方法です。
zaurus別館(http://csx.jp/~zaurus/)さんのサイトと2chのスレを参考にしながら、まとめてみました。
まず、rootになってSDをアンマウントしてください。
$ su root
# umount /dev/mmcda1
ext2でフォーマットをします。
# mkfs.ext2 /dev/mmcda
その後にfdiskを実行します。
この時に、mmcda1(パーティションの先頭)ではなくmmcda(パーティション全体)を指定するようにしましょう。
# fdisk /dev/mmcda
fdiskが起動すると、あまり見たことが無い画面になるので、慌てずに"m"を押してリターンをしましょう(ヘルプが見れます)。
SD にパーティションが既にあるなら、d コマンドで全て削除します。
その後、n コマンドで1つめのパーティションを作成します。
> n // パーティション作成。
> p // プライマリパーティション。
> 1 // 1つめ。
> // シリンダ default=1 なので、そのままリターン。
> 498 // 2GのSDだったので、FATを1Gとext2を1Gで分けるためにシリンダ(996)を2で割った数にした。
> n // パーティション作成。
> p // プライマリパーティション。
> 2 // 2つめ。
> // シリンダ default=xxx(続き(ここでは499)) そのままリターン。
> // 残り全部 default=xxx(ここでは996)そのままリターン。
> w // 書き込んで fdiskを終了。
パーティションを区切ったので、フォーマットに入ります(ここで、パーティションの先頭を指定するのを忘れずに)。
# mkfs.msdos /dev/mmcda1
# mkfs.ext2 /dev/mmcda2
フォーマットが完了したのでマウントしてみます。
# mount /dev/mmcda1 /mnt/card
fat区画をmntフォルダのcardフォルダにマウント。
# mkdir /mnt/ext2
mntフォルダにext2というフォルダを作成。
# mount /dev/mmcda2 /mnt/ext2
ext2 区画をmntフォルダのext2フォルダにマウント。
これでSDカードが二枚認識されていればOK!
ヽ(´▽`)ノおめでとう!
これで
嵐「ext2だから、エロ動画がもらえないよ!ドラえもん!!」
友「いや、フォーマットしろよ。」
嵐「でも、音楽ファイル入ってるから…。カエル トキ キキタイ ジャン?」
友「アヘ声でも聞いて帰ればいいじゃん。」
と言われて、究極の選択を迫られたり
嵐「キテレツー。SDに直接インストールしたくないのに、FATだから不安定ナリ〜。」
友「ググれカス!!」
と言われないで済みます。
ここで注意してほしいのは、カードを挿し直しただけではext2の区画が認識されないということ。
下のコマンドを実行する必要があります。
# mount /dev/mmcda2 /mnt/ext2
SDを取り外すときは必ず、コマンドラインから
#umount /dev/mmcda1
#umount /dev/mmcda2
と打つ必要があるます。SDのマークをスタイラスで叩いて取り外しをしても、fat区画だけが外されてしまいます。
これを回避するには、QT上のメモリーカードの取り外し設定がある所を発見しなくてはならないのだが…。
力尽きたというかチラミした感じでは、凄く不安定とか聞いたのでやらないというか。
更に言ってしまえば、ext2区画にはswapファイルとかを作って常駐させたりとかするし、なんだかんだ言っておいそれとは外せなくなるわけで。
でも、普通にデータのやりとりとかするときは、電源を切ってからSDを抜けばなんか問題なさそうだし。それに、設定を書き換えれば上に書いたような問題も全部解消されるみたい。
されるみたいだけど、時間無いっていうか、やる気がというか、テンプレートサイト作って!エロい人!!
ext2の区画では書き込みとかする時に色々と問題があって
# chmod -R 777 /dev/mmcda2
とかしなきゃならないんだけど、なんでだかうまくいかないし。
だからfatも捨てられないのですヨ。