引言
在Linux系统中,kworker/0:1占用系统资源过高的问题一直困扰着许多用户。尽管这个问题似乎成了Linux内核的一个祖传BUG,无论是从原生的Linux还是其他如Ubuntu等发行版都未能幸免。本文将以群晖NAS为例,提供解决kworker/0:1占用系统资源过高问题的详细教程。
进入SSH并挂载root权限
首先,我们需要通过SSH工具登录到群晖NAS。使用sudo -i
命令切换到root用户,输入群晖的IP地址、账号和密码进行登录。
查找并查看异常
在成功登录后,我们可以使用grep
命令在/sys/firmware/acpi/interrupts/
目录下查找异常。运行命令grep . -r /sys/firmware/acpi/interrupts/
后,根据输出结果我们可以判断哪个设备存在问题。比如,在我的系统中,发现gpe6F
存在问题。
禁用异常设备
找到问题设备后,我们可以使用echo
命令禁用该设备。例如,如果问题设备是gpe6F
,那么运行命令echo "disable" > /sys/firmware/acpi/interrupts/gpe6F
即可禁用该设备。
检查kworker占用情况
禁用设备后,我们需要检查kworker的占用情况是否已经恢复正常。
添加计划任务
确认kworker占用正常后,我们需要将禁用设备的命令添加到计划任务中,以确保每次系统启动时都能自动执行。使用vi
命令编辑/etc/rc
文件,在exit 0
前添加我们之前使用的禁用命令。编辑完成后,保存并退出vi
编辑器。
编辑/etc/rc
文件的示例:
vi /etc/rc
# 输入i键切换到编辑模式
# 光标移动到最末尾exit 0前加入禁用命令
echo "disable" > /sys/firmware/acpi/interrupts/gpe6F
# 按esc键退出编辑模式
# 输入:键进入命令模式
# 输入wq保存并退出
:wq
# 回车执行
重启群晖NAS
最后,重启群晖NAS以使设置生效。
📮评论