|
本帖最后由 xinle 于 2012-11-11 14:48 编辑
# T1 T1 Y6 h0 U; a9 Y
5 y5 ] y' v. w! Y7 o; h! o) l这个技巧应该适用webOS 2.0和更高版本的设备
# K7 C0 c' [7 U% M. x1 U' o5 i1 N, j9 h; V( ?$ @5 j/ S, \
$ V t/ B: O! ?. I 如果你曾经遇到过Application database is full这个提示,你会不文明用语很多次的。比如咱们论坛这位网友---,以及清风老大的地铁刷机“梦幻”之旅。。。
8 p$ N+ X; }- W, S/ g% y# f, j0 Q 8 w" [& K7 i# A+ {/ H
当然如果了解出这事儿是多么无奈抓狂,那咱还没遇到的该庆幸下。这里Application database所包括的不是你U盘上的那些文档啊音乐啊等等,而是指在webOS 2.0中管理你大量数据的内部数据库.(webOS 2.0提供了一​​个新的应用程序数据存储功能。它允许您将数据存储在一个数据库称为DB8。DB8很有意思,它允许应用程序通过权限共享数据。但是,这个功能有一个致命的缺陷。它被放置在其自己独立的分区。在一定程度上,这是不错的保护数据的方式。但它限制了可以存储多少数据。苦逼的是这个分区的大小只有135MB ...) @+ K/ K; e, H! ~; E* ]
' E* k: I% V8 F( N- ~ 当我们遇到Database full时可以会删掉一些邮件呀事件啊短信啥的,但是这基。本上不起作用。。。当然它提示你要重启,接着你就悲剧了。它自动执行"erase apps and data",你程序设置个人资料啥都没了,重新要你激活手机(装了忠哲就冻屏了)更操蛋的是,如果你palm profile重新同步,你然后接着遇到这个问题。。。
( e3 `& E; }- F: F- H 来自webOSNation的开发者Donald Kirker的解决办法是提高那个分区的大小(于此同时U盘空间会减少)。为了确保你不会再遇到这个问题,我们将向你展示如何将分区扩展到512MB,你也可以根据你自己的需要调整这个数字。(如果出错了的话,可能会导致某名问题)。8 p. Q& _2 U6 \- t1 \
以下操作可以通过webOS quick install里的工具下面linux命令行来执行。请注意这个方法仅仅在pre3上测试,不过应该通用webOS 2.X的设备(包括touchpad)。
( B# j) ?% e# L: h4 p- ?
. K$ \7 L' Z: @) O' U( A备份好你所有的数据,并认真把所有步骤看完,了解潜在的风险,确定自己是否需要。
! ]: U! ^! |' B" J Z' w" b3 |; o; e* g
最后在开始之前,我们需要检查几个东西。通过linux命令,输入“df -h”(不带引号)。- f( c. t- f$ M1 K7 u
注意下列几项信息:
: f- D& k; P$ D3 }1 BTotal "Size" of /dev/mapper/store-media.& V7 N; D; {5 T" h
The "Used" size of /dev/mapper/store-media# x- C, E; U, w! @8 @
The "Size" of /dev/mapper/store-cryptodb
9 Z" s2 J* p# i8 [2 PThe "Use%" of /dev/mapper/store-cryptodb0 I3 x# y" _0 O
我们假定“store-media”大小为12.8G。(如果你的不同,请记下数值)确保store-media上有大约600MB剩余空间(建议备份U盘资料,然后清空)。store-cryptodb大小是135MB左右,Use%应该接近100%。执行下列步骤后这个Use%会小很多。
; n0 \, ]( X$ v1 i" A9 F3 J8 i - y/ \0 Z% Q, i$ y) k% E
第一部分:收缩media分区大小- a; C) o. d% @* l% h B. c7 b- f
#停止cryptofs进程
* J8 V* I6 A* z' M/ ipkill -SIGUSR1 cryptofs, \; A1 K/ {) Y# [+ N1 {
: B7 |" b6 \1 \
#卸载/media/internal分区
$ g6 J: C4 Q/ r% _, A( b; H5 iumount /media/internal3 X4 ~% e" X/ z' Q
$ S2 v' u' ?: L1 K# F" Q#调整分区(之前是12.8G,现在调整为12.2G) N1 F8 z' d# D! Q5 O3 s, e% X
resizefat -v /dev/mapper/store-media 12.2G
7 R' q& c! J/ t( z" |+ j) \ 5 n" s: F9 e. S! V( Q; m
#调整逻辑卷,和上面一样
2 s7 h7 [/ w: r1 Y7 i( Klvreduce -L 12.2G /dev/mapper/store-media6 c" Z) B- @& w+ N
#挂载( d3 w' ^$ C; z# I; i& h
mount /media/internal2 i2 L# L, t$ N( T+ r! C0 D! m) H
; b4 H/ w' Z4 T5 _8 ]3 r2 X; W6 t
#重启cryptofs服务7 V# [& j9 E" R! @0 O
pkill -SIGUSR2 cryptofs
) s0 [( f! X" h( v' z9 X+ r 9 D% l, U2 D0 _! \' k$ f8 O$ b6 M
第二部分,调增Application Database
9 m4 J Y/ M" d N0 R% s#停止mojodb服务
7 D+ g$ V1 d5 i0 u6 I! D4 ?/sbin/stop mojodb M* @8 H! Y; v
& ]! |2 a8 O8 o q" U' X& a#卸载filesystem# q! L1 U0 d& S; L) |( v
umount /dev/mapper/store-cryptodb
' t4 H4 C+ {4 U. o* L2 U8 w: G c* F / Q+ Y/ p/ H0 I
#扩展filesystem
4 D' X- I5 @5 i" U* Nlvextend -L 512M /dev/mapper/store-mojodb; R5 ]& M) F" A. H
. e q7 a) }: z" d u#扩展encrypted& g Y ]. H% a, ]5 ]* z
cryptsetup resize /dev/mapper/store-cryptodb
! Z6 A( U4 ~2 m) [$ W0 M / c" w) W" i! f5 v/ X- R ]
#调整底层filesystem; @" h* l" }0 ^, n
resize2fs -f -p /dev/mapper/store-cryptodb
* I0 X$ S5 l7 j8 _$ @; w4 @
/ r) o+ l; G0 ^' n* |6 f( S# E#挂载" W8 o% o+ i+ L/ q9 W5 j
mount /dev/mapper/store-cryptodb
1 L4 q4 Y# `& F0 l% x - ~, S/ ^0 S b- _# L, M
#重启mojodb服务
5 u: [, r) |; w! r; S, \! V- A6 ]/sbin/start mojodb! [& w5 g$ R" c8 ^0 N
2 C: c$ l1 v. l* I; W5 I
然后完全重启你的设备(不是luna重启)。一旦它被重新加载,执行linux的命令行并运行 “df -h”。您现在应该看到/dev/mapper/store-cryptodb为512MB,Use%会比之前小得多。如果一切顺利的话,你应该也不再看到“Database full”了。
2 k. ^3 N, K9 I5 W( \& K(去原文对照代码是否有错误,我看了几遍)
) J" _( S4 g( d' E3 I' ~7 k8 G4 l$ `* ?# D7 ~
万一什么搞错了,重新刷机吧。
9 J+ @8 ?' T) @1 H- L# i* z
+ q1 d5 Z" |3 s& C原文/webosnation原作者/ADAM MARKS 翻译/xinle
5 Q4 U( ] v$ X9 w# M: J* ~+ a2 R; ~* Z4 m
treo8编辑好难···· |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?加入我们
×
|