|
本帖最后由 sdwfwmj 于 2022-3-21 12:30 编辑
4 q' Q9 ~* r" L: l! ]& t: R! z
) F6 T+ A0 ?- M) @我在上一次主贴中提到了大约035版8145X6的内存泄漏原因分析并附上了相应解决方案,在进一步的跟踪中又发现华为插件kernelapp可能也是内存泄漏点之一,所以在此贴中提供无损开关kernelapp的方法(到目前为止,我发现的kernelapp的用途是使用户能用linkhome来管理光猫,坛友若发现其他作用,欢迎补充)。本贴提供的附件使用内置的restart来重启easymesh和log,不再粗暴使用killall命令。有能力的网友,可以根据我提供的内容自行修改光猫文件;想偷懒的网友直接使用我的附件就好,提供两个附件,一个是不关掉easymesh的,一个是关掉easymesh的,附件仍是5猫粮1个,不给大家很多负担,论坛领一次猫粮足够。7 Q q3 F+ Q* \! k) H( \
: }" F4 Z- ?: x& q! ]具体分析可以参考我以前的贴子:035版8145x6不升级固件解决内存问题的一种方案『 光猫FTTx技术交流区 』 - Powered by Discuz! (chinadsl.net)
. @8 Y, d4 e/ \7 v+ z" H3 \8 s' Q
/ M4 R6 z! ?: x$ S) ?$ [& j
——————在开始之前先备份plug以备万一出问题————————
. [5 t( D# Q* `: t. L3 H8 `插入u盘后,备份命令:: b" e4 ^* H& u$ |4 j% d6 a5 Y; \
su5 e! J3 F( h6 _
cd /mnt/jffs2/plug$ X5 q! ^. b+ F7 ]! K
tar -cf /mnt/usb1_1/plug.tar *
9 o* a* g8 Y0 E8 ?备份完成后,当u盘灯不再闪烁后才能取下u盘
" H' f; G# |$ ^如果感觉有问题要恢复,保证plug.tar在U盘根目录:2 @' D+ r" w8 _1 t/ D
su% t$ \) @4 v6 B. }
cd /mnt/usb1_10 C, E" l' _ _6 F
tar -xf plug.tar -C /mnt/jffs2/plug
8 V9 B5 C/ j6 A/ t) L f" P' _
3 g \) D( o) D# W——————————下面开始————————————5 E7 U, x$ W, G( e
首先是开关kernelapp问题,进入shell命令如下
9 x' T1 D& R8 z% c/ J+ [% E7 Rsu
, }7 }6 X) ^/ D6 Lcd /mnt/jffs2/plug/app/cplugin$ c$ \: t+ S) ]7 o. x
cp cpluginstate cpluginstate-bak ( K+ F& u1 `7 Q1 U3 ~: g0 f
sed -i 's/ACTIVE/STOP/' cpluginstate9 g: K: ^: }* j0 w
输完命令后确认下:
- _. E4 s* Z: R+ F3 ocat cpluginstate2 F: ^# k% y5 o+ n/ D( y
输出内容中没有ACTIVE而有STOP就行了。确认cpluginstate后需要重启1 c, \1 I& ^/ e/ A* O7 r. F2 @
重启命令:reboot 重启后输入top回车,按m后使用↓键来找一找,只要没有./kernelapp就是成功了。
7 ?/ H9 G) y* U7 z" b ?6 e1 T9 ]% _1 L! }1 x2 o/ d
以后如果想用kernelapp的话,命令如下:- }. Q U: a2 u5 G5 M: T. I
su
; Z* t$ C4 }* E; Jcd /mnt/jffs2/plug/app/cplugin# {! B3 m3 k% l/ Q0 b
3 r' N$ K4 J; }/ B U/ c t0 Orm -rf cpluginstate
. u# m' H# p* u% R, m; i7 f8 pmv cpluginstate-bak cpluginstate% O$ J$ T) ? E% C' G
reboot
/ p: c: _% r- a: }( ^' W6 ?就好了
( k' [; V( \9 W1 |& f/ g* K) U( [* G" |0 z( W4 X }
——————————下面是优化apps(电信插件)中日志导致内存飙升问题——————————————) x, V+ R7 F5 |4 v; r. x4 v: z
注意的是,本贴提供的文件在重置中间件后会失效,所以如果哪天不想用了,直接登录光猫的普通用户,选中间件重置即可。下面的两个附件按需下载,根据自己的需求下载其中一个就好。
) g1 l4 R' H9 h5 [' W6 _: G" i
/ f/ o. z( O4 i$ g# y, j l% i5 t* `6 g5 j& B1 G
以下是解决办法及附件(本帖只提供使用u盘传递文件的命令,想用tftp的自己摸索传递文件命令)。
2 L5 U3 n6 p: X* N4 u, Y3 o下载本帖的附件并复制到光猫的/mnt/jffs2/plug下解压即可,如果将其复制到u盘内插到光猫上复制,命令如下:
9 d1 t/ q& M( e& d& J1 l( ~(1)想要easymesh正常运行的 k N, F8 o8 i$ O5 F
如果想把压缩包导入到光猫中解压,命令如下:
0 o/ N* L8 ^0 F' j- h1 o! P9 P2 Tsu
: B+ s: U1 X3 Ecd /mnt/jffs2/plug7 C# N* D% X$ Q/ I+ f
cp /mnt/usb1_1/apps-easymesh.tar apps-easymesh.tar8 i3 S9 z! `+ |- ]
tar -xf apps-easymesh.tar) V( n2 `% i. {8 w `5 P
rm -rf apps-easymesh.tar S/ e4 o8 M/ T7 q3 u( d
killall saf-huawei
. J, [! H* S. n' i8 k' d
4 s& } F: u' B) {9 D% N( `5 P. {! F2 G
如果想在u盘上直接解压,命令改成如下:7 N# F+ H# W% I1 O& v3 g; v
su+ t; \4 b8 U. u
cd /mnt/usb1_1
( P% C3 H3 @7 y7 btar -xf apps-easymesh.tar -C /mnt/jffs2/plug( Z% _& y' b6 x5 J4 u8 Z
killall saf-huawei
+ c+ A5 t2 E, @! H9 p 所有上述命令做完后,用top命令寻找有没有名称为/usr/sbin/crond -c /etc/crontabs进程,有了就代表文件成功运行了
4 c$ a3 Q( y; N
2 r; x0 c L( a' y6 ^. U
: f& l4 Q4 G+ O3 z
' ^! ~- Y. s0 H* Q/ |) q(2)想要关掉easymesh的如果想把压缩包导入到光猫中解压,命令如下:
6 O$ i4 m9 M) D8 Z" |: z' X3 wsu
/ _$ o+ Y7 y& K) ^. ycd /mnt/jffs2/plug
- o) u- u; F9 n9 \cp /mnt/usb1_1/apps-noeasymesh.tar apps-noeasymesh.tar, O% h3 e% c8 D* }$ u
tar -xf apps-noeasymesh.tar# t9 m) }' }; j5 L
rm -rf apps-noeasymesh.tar
6 n: `( C' s- H2 G: }; ^* Akillall saf-huawei$ l( \/ H- p9 c+ I/ |
0 U2 t# p& ]& m0 S- n3 l如果想在u盘上直接解压,命令改成如下:* C2 M8 o8 S2 f7 Q+ O# x
su
% M+ m d2 o6 ~+ c9 s6 p$ ocd /mnt/usb1_1$ m* C: x8 P& \/ v- J5 Y
tar -xf apps-noeasymesh.tar -C /mnt/jffs2/plug, }, G" r; X8 G0 Y
killall saf-huawei
5 g& S9 Y/ T/ O* n( L. y 所有上述命令做完后,用top命令寻找有没有名称为/usr/sbin/crond -c /etc/crontabs进程,查看/sbin/easymesh进程是否已经消失,如果上面两项实现就代表文件成功运行了
* \8 {2 t6 A1 e# y2 w/ h" N4 i2 x) z k6 Y4 |! b
* A" U) D; l7 e W; N
确认文件成功运行后,最好重启一下以排除其他程序影响,重启命令:reboot/ _$ g4 G& Q% A2 i# q
6 ?- W" J4 C* H/ o( V7 {注意,已经没有了电信插件的,优化apps的附件不起作用,不用白费劲,仅关掉kernelapp就可以了。- X( M" g# G. M
# o! h9 T% q) W. M. t |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?注册
×
|