Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

编译时只要取消 autosamba,就会导致 CPU 使用率只显示一个 % #11603

Closed
1 task done
cjpjxjx opened this issue Oct 17, 2023 · 6 comments
Closed
1 task done

Comments

@cjpjxjx
Copy link
Contributor

cjpjxjx commented Oct 17, 2023

反馈bug/问题模板,提建议请删除

1.关于你要提交的问题

Q:是否搜索了issue (使用 "x" 选择)

  • 没有类似的issue

2. 详细叙述

(1) 具体问题

A:按照 README 的步骤进行编译的,这个问题不影响正常使用,但是对于强迫症来说很难受,根据我至少十几次的反复编译尝试,甚至用上一个版本9.18也尝试过,最终确定,只要在 make menuconfig 取消 Extra packages > autosamba. Samba autoconfig hotplug script. 就会导致编译出来的固件 CPU 使用率只显示一个 %,除了在 feeds.conf.default 文件里取消注释 helloworld,其他参数全部都是默认没有更改,只要不取消 autosamba,编译出来的固件都是没有问题的,但是不取消 autosamba,就会多出来一个“NAS > 网络共享”的栏目,这是我不需要的

正常的固件:

O9r9.png

只显示一个 % 的固件:

OWnU.png

(2) 路由器型号和固件版本

A:x86

(3) 详细日志

A:无

@veik
Copy link

veik commented Oct 18, 2023

我这里也是碰到这个问题,原来是autosamba

@Pacio
Copy link

Pacio commented Oct 20, 2023

我这边也取消了但是没遇到你这种情况

@cjpjxjx
Copy link
Contributor Author

cjpjxjx commented Oct 22, 2023

我这里也是碰到这个问题,原来是autosamba

我已经找到 bug 原因和修复方式,正在重新编译测试,没问题的话会提交 PR 和发布修复方式

我这边也取消了但是没遇到你这种情况

该问题应该是只存在于 x86 平台,我已经找到 bug 原因和修复方式,正在重新编译测试,没问题的话会提交 PR 和发布修复方式

autosamba和CPU又任何相关性。我都是取消的,显示一切正常

该问题应该是只存在于 x86 平台,我已经找到 bug 原因和修复方式,正在重新编译测试,没问题的话会提交 PR 和发布修复方式

@bikioxo
Copy link

bikioxo commented Oct 22, 2023

有解决了吗,我也是这样

@cjpjxjx
Copy link
Contributor Author

cjpjxjx commented Oct 22, 2023

经过不断尝试,发现问题原因在 package/lean/autocore/files/x86/index.htm 文件

该文件中获取 CPU 使用率所在行的命令 top -n 1 | grep 'CPU:' 会获取到两行数据,另一行是 grep CPU 进程自身,导致计算报错,如下所示

root@OpenWrt:~# top -n 1 | grep 'CPU:' 
CPU:   0% usr   9% sys   0% nic  90% idle   0% io   0% irq   0% sirq
 2813  6672 root     S     1124   0%   0% grep CPU:

由于 x86 平台和 arm 平台使用的是不同的 index.htm 文件,获取 CPU 使用率的命令也不一样,再结合其他人的反馈,所以这个问题应该是只出现在 x86 平台上

虽然我也还是不知道为啥在编译时取消 autosamba 就会出现这个问题,但是修改匹配条件使用 grep -E '^CPU:' 匹配以 CPU: 开头的行可修复此问题

在编译前修改 package/lean/autocore/files/x86/index.htm,找到 grep 'CPU:' 修改为 grep -E '^CPU:' 即可

如果现在使用的系统有这个问题又不想重新安装,按照下面两步即可修复:

  1. 使用 vim /usr/lib/lua/luci/view/admin_status/index.htm 命令编辑首页文件 index.htm
  2. 找到 grep 'CPU:' 修改为 grep -E '^CPU:' 保存后不需要任何操作就可以正常显示 CPU 使用率了

@cjpjxjx cjpjxjx closed this as completed Oct 22, 2023
@cjpjxjx
Copy link
Contributor Author

cjpjxjx commented Oct 22, 2023

有解决了吗,我也是这样

已经解决 0dc766c

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants