Galaxy S で /system の容量が足りないとお嘆きのあなたへ

こんにちは、フォントやら framework やらを弄りまくると /system の容量が少なくて泣ける cryks です。
以前の記事では /system 以下にリネームバックアップしてましたが、そんなことをすると /system の空き容量がマッハです。


そんなわけで /data に移し替えましょう。


取り立てて説明するようなものでもないですけど、framework-res.apk を例に。
あ、書いてある内容に責任は持てませんのでうんぬんかんぬん


以下起動中
> adb push framework-res.apk.customized /sdcard/
> adb shell
$ su
# cd /data
# mkdir framework
# chmod 775 framework
# cd framework
# cp /sdcard/framework-res.apk.customized .


以下リカバリモード、rageagainstthecage で rooted 前提
z4mod でカーネルパッチを当てている場合は、/system が ro でマウントされますので、rw で remount してください。
> adb shell
# cd /system/framework
# mv framework-res.apk framework-res.apk.original
# ln -s /data/framework/framework-res.apk.customized framework-res.apk


/data はリカバリモードでは見えないので、/data に突っ込むのは通常起動中である必要があります。
また、リカバリモードの wipe を選ぶとえらいことになるので、そのときはバックアップを復活させてください。


(2010/12/31 追記)
/data がリカバリモードで見えないのは、z4mod で mmcblk0p1 が ext2 になっている場合です (リカバリモード時に ext2 モジュールが読み込まれないため)。
rfs のままの場合は見えているかもしれません。もしくは、適切な mount コマンドを叩けばマウントできるかもしれません。未確認。
OCLF で lagfix している場合は諦めてください。