- 我刚刚在我的笔记本电脑上安装了 Ubuntu 22.04,内存为 8GB(无双启动,ext4 + 20GB linux 交换);
- 安装了 2 个 gnome shell 扩展 (Dash to panel、Workspace Matrix);
- 我的工作环境只是 vs code、webpack dev server 和 chrome;
- 在积极开发期间,每 10 分钟就会有程序死掉。找不到任何错误日志,看起来应用程序已关闭(如果是 webpack dev server,则终端窗口已关闭)。如果是 chrome - 则没有剩余的 chrome 进程。
- 目前,活动应用程序不会发生这种情况 - 只有后台应用程序会死机。就像你保存代码,切换到浏览器 - 但没有浏览器,或者你在 devtools 中检查某些内容,切换到 vs code - 但没有 vs code。
调查此事的第一步应该是什么?在哪里查找日志/崩溃报告?
答案1
我也遇到了同样的问题,结果systemd-oomd - 系统管理(用户空间内存不足(OOM)杀手)每当我的交换空间不足时就会终止我的应用程序。
按照@guiverc 的建议,您可以运行以下命令来查看是否也存在这种情况:
journalctl -u systemd-oomd
示例输出:
mai 09 07:03:25 caterpillar systemd[1]: Starting Userspace Out-Of-Memory (OOM) Killer...
mai 09 07:03:26 caterpillar systemd[1]: Started Userspace Out-Of-Memory (OOM) Killer.
mai 09 14:05:24 caterpillar systemd-oomd[573]: Killed /user.slice/user-1000.slice/[email protected]/app.slice/snap.firefox.firefox.d00df170-f05e-4de1-a1c8-4c1d53664dc1.scope due to memory used (7277371392) / to>
mai 10 10:32:34 caterpillar systemd-oomd[573]: Killed /user.slice/user-1000.slice/[email protected]/app.slice/snap.firefox.firefox.4fad3166-da1d-4084-8a67-8a2ddfe4ab68.scope due to memory used (7352815616) / to>
两个选项:
禁用 systemd-oomd:
systemctl disable --now systemd-oomd
增加交换大小(受到推崇的)。
答案2
显然,systemctl disable --now systemd-oomd
重新启动后不会继续存在,所以我们需要执行以下操作:
sudo systemctl mask systemd-oomd.service
答案3
对我来说,问题是交换文件太小。请先尝试增加交换文件大小。
此外,通过 snap 安装的某些应用程序(例如 slack)非常不稳定。请尝试直接从其网站下载安装。