|
本帖最后由 xinle 于 2012-11-11 14:48 编辑 7 u# [$ k) t( N6 `; W/ ]
0 [% H1 O# I' W8 R这个技巧应该适用webOS 2.0和更高版本的设备
9 d) v8 ]/ ^7 E6 V) Y
- _0 f4 Y1 B! h! g
; ]* W, [4 Z( _( | 如果你曾经遇到过Application database is full这个提示,你会不文明用语很多次的。比如咱们论坛这位网友---,以及清风老大的地铁刷机“梦幻”之旅。。。4 D: a9 O1 _# ~
9 }9 ~# x" e+ e8 F$ \. [( ^ 当然如果了解出这事儿是多么无奈抓狂,那咱还没遇到的该庆幸下。这里Application database所包括的不是你U盘上的那些文档啊音乐啊等等,而是指在webOS 2.0中管理你大量数据的内部数据库.(webOS 2.0提供了一​​个新的应用程序数据存储功能。它允许您将数据存储在一个数据库称为DB8。DB8很有意思,它允许应用程序通过权限共享数据。但是,这个功能有一个致命的缺陷。它被放置在其自己独立的分区。在一定程度上,这是不错的保护数据的方式。但它限制了可以存储多少数据。苦逼的是这个分区的大小只有135MB ...)
/ X: U4 B' @; a3 Y' E: h2 L6 O/ P T
' d+ M" _/ L) ?, I# C! R7 L 当我们遇到Database full时可以会删掉一些邮件呀事件啊短信啥的,但是这基。本上不起作用。。。当然它提示你要重启,接着你就悲剧了。它自动执行"erase apps and data",你程序设置个人资料啥都没了,重新要你激活手机(装了忠哲就冻屏了)更操蛋的是,如果你palm profile重新同步,你然后接着遇到这个问题。。。
$ H6 }! p& J6 M- |- b- c3 S- u 来自webOSNation的开发者Donald Kirker的解决办法是提高那个分区的大小(于此同时U盘空间会减少)。为了确保你不会再遇到这个问题,我们将向你展示如何将分区扩展到512MB,你也可以根据你自己的需要调整这个数字。(如果出错了的话,可能会导致某名问题)。
. R; I1 Q/ Q8 j8 v* _* ^) \ 以下操作可以通过webOS quick install里的工具下面linux命令行来执行。请注意这个方法仅仅在pre3上测试,不过应该通用webOS 2.X的设备(包括touchpad)。" o" R7 _! a, q
; o3 H* z' [. q) C* |$ s7 f c备份好你所有的数据,并认真把所有步骤看完,了解潜在的风险,确定自己是否需要。
, D7 K0 ~0 M$ w1 b 0 s$ `, |+ x: x7 J& N6 G. R# ?
最后在开始之前,我们需要检查几个东西。通过linux命令,输入“df -h”(不带引号)。( { _/ t8 x+ F- m2 ?/ s/ S
注意下列几项信息:7 t5 c! @: d5 Y* Z8 \( w
Total "Size" of /dev/mapper/store-media.
' {1 n: S) H. S/ P( HThe "Used" size of /dev/mapper/store-media8 w* e7 H; c* i1 ~; |/ `1 K3 d, E
The "Size" of /dev/mapper/store-cryptodb
$ `+ s* ] e" d$ V; {( JThe "Use%" of /dev/mapper/store-cryptodb3 C$ d4 p2 ^6 F8 S
我们假定“store-media”大小为12.8G。(如果你的不同,请记下数值)确保store-media上有大约600MB剩余空间(建议备份U盘资料,然后清空)。store-cryptodb大小是135MB左右,Use%应该接近100%。执行下列步骤后这个Use%会小很多。4 y$ q/ N3 X0 F* c5 V
) [; Z& Y# c6 g: K! c6 V1 }第一部分:收缩media分区大小
# G$ Q* \4 e% B#停止cryptofs进程
0 I7 u I/ ~7 l$ J! M4 M! gpkill -SIGUSR1 cryptofs
: o' v# M' h3 [# O$ N
, G" E# H; S: L! H+ o$ B6 a! _#卸载/media/internal分区) f1 V6 [7 v6 C$ s5 a0 v
umount /media/internal
) T; G L& U2 D* g7 ~
0 O& j$ O5 ^; v, u" _& r( Q. H#调整分区(之前是12.8G,现在调整为12.2G)' X- q2 v5 W0 h$ y
resizefat -v /dev/mapper/store-media 12.2G' A. p, ]3 c+ M3 }
% @$ m( l( o1 z#调整逻辑卷,和上面一样
* L+ p% l& f4 A* n7 O+ dlvreduce -L 12.2G /dev/mapper/store-media3 B9 I: l) N- h }0 R( r. o
#挂载# u$ o/ ]2 R& h n- Z
mount /media/internal
6 H. O( _& O& v1 o6 V4 X3 v3 t ( @" T+ X! |, v) q3 |0 I
#重启cryptofs服务
2 L1 Z p \% Q( T- U2 ?pkill -SIGUSR2 cryptofs
& _7 B; l. G6 Y+ p8 @' I; ] 4 E) A O( s2 v4 \6 t+ P2 m8 i% p
第二部分,调增Application Database. y- w# k, [+ u: n4 a
#停止mojodb服务
' Y2 x5 {, ~; o A9 W/sbin/stop mojodb6 C, R. ^* Y. J; r1 ]; P# ^1 O* r1 k
+ e0 [; c5 T- Q; z( L) q
#卸载filesystem4 b6 S! f& ^/ N) n; e) [& m
umount /dev/mapper/store-cryptodb
9 U! z; b6 _! k: m7 E% ` / v6 F9 C1 K6 V# \
#扩展filesystem; N# | \& d2 l
lvextend -L 512M /dev/mapper/store-mojodb
+ k3 ]* }( |; [ 7 e3 U6 ?, T9 O& ~5 ~5 F
#扩展encrypted
0 S* m- [" n% Rcryptsetup resize /dev/mapper/store-cryptodb
0 ~( s4 {3 Q/ g; G
' M9 R0 n9 T5 m#调整底层filesystem
3 k: I* K& {& H, presize2fs -f -p /dev/mapper/store-cryptodb/ v+ w3 @" h& R3 b. x
; n4 P# Y" ~- g6 A# m! L+ L# z#挂载2 e! N! G& \2 S# s5 _
mount /dev/mapper/store-cryptodb X2 J! u0 S* U2 x; {' C1 o
7 [( ~+ B1 z4 j* p
#重启mojodb服务; M* O; T! h( N$ V/ q
/sbin/start mojodb
. z* A! i( d7 D, C. f 2 q: D1 B( j; K4 z0 b
然后完全重启你的设备(不是luna重启)。一旦它被重新加载,执行linux的命令行并运行 “df -h”。您现在应该看到/dev/mapper/store-cryptodb为512MB,Use%会比之前小得多。如果一切顺利的话,你应该也不再看到“Database full”了。# u/ o' y$ U9 J: B- \+ l& ~
(去原文对照代码是否有错误,我看了几遍)3 a9 f# U: _9 j, h
- w9 ^# [* V8 f( O# i万一什么搞错了,重新刷机吧。1 P& r& | h, }( g3 \$ Y! h1 G |
5 C8 o/ h+ L9 ]3 f1 U5 J' o0 U, F
原文/webosnation原作者/ADAM MARKS 翻译/xinle
7 c" H& ?8 ]- E! T
, q x- Q6 U W- m8 Qtreo8编辑好难···· |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?加入我们
×
|