蜀水闻涛

蜀道难上青天,水波浪及塘沿。闻声心潮澎湃,涛起阵阵思念。
蜀水闻涛

12/08/2010

又见 Symbolic Links

原创日记, by 很黑很非洲.

  入手华为 C8600 后,本说为了电池寿命,这次坚决不疯狂研究,可是不到几天就开始瞎捣鼓了,还差点变砖,还好我的实际动手能力还凑合~~~

  清理了几个不必要的捆绑软件之后,手机内部存储空间居然仍然告急,RE 查看之,居然只剩 1M 不到,原因么~~嘿嘿,虚荣心作祟,提取了 Windows 7 自带的超大容量微软雅黑字体替换了 Android 系统原来的字体(说真的,我还真没想到雅黑字体在手机上的表现如此令人兴奋),还从网上挖来 Motorola Droid X 精美的开机动画,容量么~~没办法,只有想办法解决了。

  记得用 91手机助手查看手机中的文件时看到过一个快捷方式,指向 /data/seventh/app/ 目录,因为我已经 app2sd 过了(在此感谢下 hiapk 的 seventh),且对 Linux 稍有接触,所以明白这应该是一个符号链接(symbolic links),那就可以把 /system 下的 fonts 和 media 目录通过符号链接的方式搬到 SD 卡。但是不知道怎样创建,反正与 Windows 是不同的。

  有了想法却不能实施,是一件令人沮丧的事情,网上转悠好久,无果。最后换了个方式搜索到某人给 Motorola Milestone 进行 app2sd 的教程,其过程中有提到,居然如此简单的命令:ln -s [目标路径] [链接路径]。

  方法找到了,但是又有担心,因为手机每次开机都会提示“正在准备 SD 卡”,所以担心这种改动之后会影响到系统启动,从搜到的资料来看,这种担心完全是多余的,因为 ext3 分区拥有“日志(Journal)”功能,而日志功能最大的好处,就是当你的操作(如对 SD 卡进行读取或者写入的过程中)因为意外原因被打断(比如突然断电),那么,有日志功能的 ext3 分区上的文件,不会有任何损坏或者丢失。当每次打开电话时,上面总是提示“正在准备 SD 卡”。每次都提示正在准备,但其实系统正在做的就是检查 fat32 格式是不是损坏,这正是因为 fat32 格式不具备日志功能。

  回想一下以前在 Windows 98 年代的日子,每次当我们并非正确关机或者突然重启之后,会出来一个带着扫描进度条的蓝屏,这个扫描进度条和现在正在准备 SD 卡,是一个意思。但当我们后来用 Windows 2000, Windows XP时,因为这两个系统开始支持带有日志功能的 ntfs, 所以在这两个系统下,文件系统损坏的可能被降低了。正因为 ext3 格式支持日志功能,所以这个分区不需要“正在准备 SD 卡”,意味着这个分区在手机启动的那一刹那就可以正常的被访问:所有桌面小工具啊等等东西,就可以开机运行。题外话:Android 2.2 官方的 app2sd 功能纯属摆设,毫无意义……

  OK, 想法、方法有了,顾虑也打消了,开始行动了——首先在手机端用 RE 把 /system 目录下的 fonts 和 media 目录拷贝至 /data/seventh 目录下,接着电脑端操作:

……(省略操作 n 步,包括备份、获取 root 权限==)
#adb shell
#rm -r /system/fonts
#rm -r /system/media
#ln -s /data/seventh/fonts /system/fonts
#ln -s /data/seventh/media /system/media

  结果:/system 目录下查看空间剩余 40+M, 完美!不过问题是再也不能开机拔卡了~~~不过没事拔卡干啥呢?有所得必有所失嘛~~此文以备后患,吼吼~~

Back Top

发表评论

电子邮件地址不会被公开。 必填项已用*标注