我最近升级到了 Kubuntu Natty Beta 1,并且进程kworker遇到了很多问题。有时它几乎使用了我一半的 CPU。此外,奇怪的是它似乎影响了我的 USB 端口;每当我插入 USB 驱动器时,进程kworker都会进入超驱动器,让我无法工作。
我曾考虑过提交错误,但由于我什至没有找到任何关于kworker是什么的合理解释,我想我应该先找出来。
我有带 8 GB RAM 和 1TB HDD 的笔记本电脑。我有 2 GB 的交换文件(Ubuntu 18.04 默认使用交换文件而不是单独的交换分区),我想增加它以使用休眠。
我想将它从 2 GB 增加到 16 GB。这是 GParted 的屏幕截图:
我试图增加它,fallocate -l 16G但它没有用。
还有图片来自free -m:
我使用 mongodb 3.0 并发现一个警告:
MongoDB shell version: 3.0.0
connecting to: test
Server has startup warnings:
2015-03-13T16:28:29.405+0800 I CONTROL [initandlisten]
2015-03-13T16:28:29.406+0800 I CONTROL [initandlisten] ** WARNING: /sys/kernel/mm/transparent_hugepage/enabled is 'always'.
2015-03-13T16:28:29.406+0800 I CONTROL [initandlisten] ** We suggest setting it to 'never'
2015-03-13T16:28:29.406+0800 I CONTROL [initandlisten]
2015-03-13T16:28:29.407+0800 I CONTROL [initandlisten] ** WARNING: /sys/kernel/mm/transparent_hugepage/defrag is 'always'.
2015-03-13T16:28:29.407+0800 I CONTROL [initandlisten] ** We suggest setting it to 'never'
2015-03-13T16:28:29.407+0800 I CONTROL [initandlisten]
Run Code Online (Sandbox Code Playgroud)
~# cat /sys/kernel/mm/transparent_hugepage/enabled
[always] madvise never
~# cat /sys/kernel/mm/transparent_hugepage/defrag
[always] madvise never
Run Code Online (Sandbox Code Playgroud)
我尝试使用 …
我读过这个问题,但它是在服务器而不是台式机或笔记本电脑的上下文中提出的。
如果笔记本上安装了大量 RAM,比如 8 GB,我们还需要交换空间吗?
从 15.10 升级到 16.04 后,我注意到我的上网本风扇一直在全速转动。我检查了进程 mnitoor 并注意到 KswapD0 使用了 100% 的一个内核。
问题是什么 ?正因为如此,我的上网本很慢,而且我担心处理器过热。
我的戴尔 Latitude E7390(16 GB 内存,英特尔 i5 第 8 代八核),运行 Ubuntu 18.04 一直面临这个问题,这个过程kswapd0在一个或多个内核上占用了大约 100% 的 CPU 时间。
我必须去 tty 并杀死该进程(由于它是根进程而重新生成)
我发现了许多详细描述这个问题的类似问题,但是,其中大部分都是旧的,有些人声称这是一个 Linux 内核错误,已在 16.04 中为 Ubuntu 修复。此外,在不同的硬件和软件模型上,所有答案都大约有 2-3 年的历史。因此,在这里为这些较新的模型重新提出这个问题。类似的问题(其中大部分是解决方法):
https://www.linuxquestions.org/questions/slackware-14/kswapd0-at-100-cpu-4175585351/
https://bugzilla.kernel.org/show_bug.cgi?id=65201
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1518457
https://bbs.archlinux.org/viewtopic.php?id=205654(这是arch的一个,但仍然相关)
PS:uname -a我的系统截图供参考
我有这个小型虚拟服务器(1GB RAM,1 vcore),它对我很有用,直到它突然开始报告 100% CPU 使用率,因为 kswapd0。内存消耗在 50% 到 60% 之间。我将 swappiness 设置为 0 只是为了检查它是否释放 CPU 资源,但它没有。我在 16.04 上遇到过这个问题,升级后现在在 18.04 上。如何摆脱这个 kswapd0 CPU 猪?
我提出这样的问题是因为我也在寻找一些一般性的建议,除了可能是这个问题的技术解决方案。
只是用 Firefox 浏览(打开一百万个标签页),计算机最终冻结,我可以移动光标,但不能移动。我重新启动了计算机,并top在角落里留下了一个带有监控功能的终端。当它再次发生时,kswapd0使用了 99% 的 CPU。我拍了一张冻结屏幕的照片:
我想我kswapd0从这个不错的答案中明白了什么。
问题:我应该尝试应用@Zzzach 的建议...并尝试一下,还是 ubuntu 崩溃的事实指向一个更基本的问题?更实际的是:我应该退回我的新笔记本电脑并再买一台(也许有更多内存)?
现在任何建议都会对我有用。谢谢你。
DELL Precision 3551(8Gb,i7-10 代,6 核)。直接购买DELL。预装 Ubuntu 20.04
编辑
的输出free -h由@heynnema的要求(之前做变化到交换配置):
total used free shared buff/cache available
Mem: 7,4Gi 1,7Gi 3,1Gi 487Mi 2,6Gi 4,9Gi
Swap: 2,0Gi 0B 2,0Gi
Run Code Online (Sandbox Code Playgroud)
和 sudo swapon -s
Filename Type Size Used Priority
/swapfile file 2097148 0 -2
Run Code Online (Sandbox Code Playgroud)
free -h 之后的变化
total used free shared buff/cache available
Mem: …Run Code Online (Sandbox Code Playgroud) swap ×5
cpu ×4
16.04 ×2
kernel ×2
18.04 ×1
crash ×1
dell ×1
hibernate ×1
memory-usage ×1
mongodb ×1
overheating ×1
partitioning ×1
sysfs ×1
systemd ×1