我需要将生成的核心文件大小限制为磁盘使用量的10%。我已经将ulimit -c
设置为无限,说明每个文件大小都是无限的。然后我使用配置文件/etc/systemd/coredump.conf.d/custom.conf
来设置
[Coredump]
Storage=external
#Compress=yes
#ProcessSizeMax=2G
#ExternalSizeMax=2G
#JournalSizeMax=767M
MaxUse=10
#KeepFree=15
我认为这个配置文件将磁盘使用率限制在10%。但核心文件的使用率仍然超过10%。
我尝试设置Storage=none
,但仍然生成了核心文件。将ulimit -c
设置为0,停止生成核心文件。但我想磁盘使用率是10%。我遗漏了什么吗?
发布于 2018-02-14 07:59:05
MaxUse=10实际上说,如果转储的总大小超过10字节,就清除所有旧的转储。
如下面链接中提到的源代码所示:https://github.com/systemd/systemd/blob/4e4e3d97664163267d8295e6f58e0ff8560bea33/src/basic/parse-util.c#L109
看起来,MaxUse是一个以大小而不是百分比为单位的参数,在这里,手册页面看起来有点误导。
MaxUse只使用大小,它应该是这个集合-> {"E“、"P”、"T“、"G”、"M“、"K”、"B“、”}“中提到的任何一个后缀。
在默认情况下,任何没有后缀的数字都将被视为Bytes。
https://unix.stackexchange.com/questions/312093
复制