hdd3にswapファイルをおきたいので、ext3フォーマットにする。
まず、/hdd3の中身をtarでまとめて、どこかに退避しておく。
$su
# cd /
/hdd3をアンマウントするために、握っているzdictをkillする。
# killall zdict
# umount /hdd3
# fdisk /dev/hda
Command (m for help): t (パーティションidの変更)
Partition number (1-4): 3 (/dev/hda3)
Hex code (type L to list codes): 83 (Linux ext3)
Command (m for help): w (書き込み)
ext3でフォーマット
# mke2fs -j /dev/hda3
# mount -t ext3 /dev/hda3 /hdd3
ここで、swapを連続した領域に事前に作っておく(128MB)
# dd if=/dev/zero of=/hdd3/.swap bs=512 count=262144
# mkswap /hdd3/.swap
所有者とパーミッションを元に戻す。
# chown -R zaurus:qpe /hdd3
# chmod -R go-w /hdd3
マウントする起動スクリプトを修正する。
# mount -o remount,rw /dev/root /
# cd /root/etc/rc.d
# cp /root/etc/rc.d/rc.rofilesys /root/etc/rc.d/rc.rofilesys.ORIG
# vi rc.rofilesys
以下のように編集した。基本的にはvfatを検索して、それぞれext3に合うようにするだけ。
# diff /root/etc/rc.d/rc.rofilesys.ORIG /root/etc/rc.d/rc.rofilesys
84c84,85
< mkfs.vfat -F 32 /dev/${IDE1}3 2> /dev/null > /dev/null
---
> mke2fs $MKE2FSOPT /dev/${IDE1}3 2> /dev/null > /dev/null
105c106,107
< mount -t vfat -o noatime,quiet,umask=000,iocharset=utf8 /dev/${IDE1}3 /hdd3
---
> mount -t $LINUXFMT -o noatime /dev/${IDE1}3 /hdd3
203c205,206
< mount -t vfat -o noatime,quiet,umask=000,iocharset=utf8 /dev/${IDE1}3 /hdd3
---
> mount -t $LINUXFMT -o noatime /dev/${IDE1}3 /hdd3
265c268,269
< mount -t vfat -o noatime,quiet,umask=000,iocharset=utf8 /dev/${IDE1}3 /hdd3
---
> mount -t $LINUXFMT -o noatime /dev/${IDE1}3 /hdd3
USB接続したときにFATでリマウントしないようにするには、/etc/hotplug/usbdstorage.agentを同様に編集する必要があるが、USB接続することは無いだろうからとりあえずはさわらないで置く。
退避してあったオリジナルの/hdd3の中身を復旧して、リブートで完了。