当 tmpfs 达到其限制时,哪种错误配置会导致系统重置?

当 tmpfs 达到其限制时,哪种错误配置会导致系统重置?

在嵌入式系统上,有 2 个 tmpfs 挂载。1GB 挂载到 /tmp,另外 1GB 挂载到 /run,总 RAM 为 8GB。未使用交换空间。

如果其中一个达到其极限,系统就会自行重置。

即以下两个验证都会导致重置。

cat /dev/urandom > /tmp/foo或者cat /dev/urandom > /run/foo

我原本期望 OOM-Killer 和/或 cgroups 能够启动并避免此类问题。

内核端和 systemd 端应该配置错了什么?

编辑:另一项测试显示 OOM-killer 正在尝试完成其工作

~ # dd if=/dev/urandom of=/tmp/somefile bs=1M count=950 ; rm /tmp/somefile
Killed
~ # free
              total        used        free      shared  buff/cache   available
Mem:       11789532     2487424     8363864       29148     1208604     9961408
Swap:              0           0           0
--> reset kicks in here.

相关内容