如何解决dovecot:lmtp:错误:致命错误:无法保留页面摘要内存
从ubuntu
18升级到20后
开始从golang
规则文件运行sieve
二进制文件中获取此信息
Sep 17 08:54:00 lonjemail spamd[3231]: spamd: connection from ::1 [::1]:57844 to port 783,fd 5
Sep 17 08:54:00 lonjemail spamd[3231]: spamd: setuid to Debian-exim succeeded
Sep 17 08:54:00 lonjemail spamd[3231]: spamd: processing message <CANcP0tbws-r=L8KrTug_NKLk0EuPwo1vKotdpV=Pf95Pxusbww@mail.gmail.com> for Debian-exim:114
Sep 17 08:54:00 lonjemail systemd-resolved[527]: Server returned error NXDOMAIN,mitigating potential DNS violation DVE-2018-0001,retrying transaction with reduced feature level UDP.
Sep 17 08:54:00 lonjemail systemd-resolved[527]: message repeated 8 times: [ Server returned error NXDOMAIN,retrying transaction with reduced feature level UDP.]
Sep 17 08:54:00 lonjemail spamd[3231]: spamd: clean message (1.1/5.0) for Debian-exim:114 in 0.3 seconds,2760 bytes.
Sep 17 08:54:00 lonjemail spamd[3231]: spamd: result: . 1 - DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM,HTML_MESSAGE,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,RDNS_NONE,SPF_HELO_NONE,SPF_PASS scantime=0.3,size=2760,user=Debian-exim,uid=114,required_score=5.0,rhost=::1,raddr=::1,rport=57844,mid=<CANcP0tbws-r=L8KrTug_NKLk0EuPwo1vKotdpV=Pf95Pxusbww@mail.gmail.com>,autolearn=no autolearn_force=no
Sep 17 08:54:00 lonjemail dovecot: lmtp(4254): Connect from local
Sep 17 08:54:00 lonjemail dovecot: lmtp: Error: fatal error: failed to reserve page summary memory
Sep 17 08:54:00 lonjemail dovecot: lmtp: Error:
Sep 17 08:54:00 lonjemail dovecot: lmtp: Error: runtime stack:
Sep 17 08:54:00 lonjemail dovecot: lmtp: Error: runtime.throw(0x1a48db5,0x25)
Sep 17 08:54:00 lonjemail dovecot: lmtp: Error: #011/usr/local/go/src/runtime/panic.go:1116 +0x72 fp=0x7ffe160d5860 sp=0x7ffe160d5830 pc=0x4ce5d2
Sep 17 08:54:00 lonjemail dovecot: lmtp: Error: runtime.(*pageAlloc).sysInit(0x232c268)
Sep 17 08:54:00 lonjemail dovecot: lmtp: Error: #011/usr/local/go/src/runtime/mpagealloc_64bit.go:80 +0x185 fp=0x7ffe160d58f0 sp=0x7ffe160d5860 pc=0x4c4e25
Sep 17 08:54:00 lonjemail dovecot: lmtp: Error: runtime.(*pageAlloc).init(0x232c268,0x232c260,0x25cb8d8)
Sep 17 08:54:00 lonjemail dovecot: lmtp: Error: #011/usr/local/go/src/runtime/mpagealloc.go:317 +0x75 fp=0x7ffe160d5918 sp=0x7ffe160d58f0 pc=0x4c2815
Sep 17 08:54:00 lonjemail dovecot: lmtp: Error: runtime.(*mheap).init(0x232c260)
Sep 17 08:54:00 lonjemail dovecot: lmtp: Error: #011/usr/local/go/src/runtime/mheap.go:743 +0x24b fp=0x7ffe160d5940 sp=0x7ffe160d5918 pc=0x4bf84b
Sep 17 08:54:00 lonjemail dovecot: lmtp: Error: runtime.mallocinit()
Sep 17 08:54:00 lonjemail dovecot: lmtp: Error: #011/usr/local/go/src/runtime/malloc.go:480 +0x109 fp=0x7ffe160d5968 sp=0x7ffe160d5940 pc=0x4a4c49
Sep 17 08:54:00 lonjemail dovecot: lmtp: Error: runtime.schedinit()
Sep 17 08:54:00 lonjemail dovecot: lmtp: Error: #011/usr/local/go/src/runtime/proc.go:563 +0x65 fp=0x7ffe160d59c0 sp=0x7ffe160d5968 pc=0x4d1f25
Sep 17 08:54:00 lonjemail dovecot: lmtp: Error: runtime.rt0_go(0x7ffe160d5ad8,0x2,0x7ffe160d5ad8,0x1813580,0x7fd3cc8a80b3,0x7fd3cca6cb80,0x200011c00,0x501080,...)
Sep 17 08:54:00 lonjemail dovecot: lmtp: Error: #011/usr/local/go/src/runtime/asm_amd64.s:214 +0x125 fp=0x7ffe160d59c8 sp=0x7ffe160d59c0 pc=0x5011c5
Sep 17 08:54:00 lonjemail dovecot: lmtp(roman)<4254></X0wOCgkY1+eEAAAgcArzw>: program exec:/usr/lib/dovecot/sieve-execute/smtp (4255): Terminated with non-zero exit code 2
Sep 17 08:54:00 lonjemail dovecot: lmtp(roman)<4254></X0wOCgkY1+eEAAAgcArzw>: sieve: msgid=<CANcP0tbws-r=L8KrTug_NKLk0EuPwo1vKotdpV=Pf95Pxusbww@mail.gmail.com>: stored mail into mailbox 'Unsubscribe.Neighbors'
Sep 17 08:54:00 lonjemail dovecot: lmtp(4254): Disconnect from local: Client has quit the connection (state=READY)
Sep 17 08:55:01 lonjemail CRON[4257]: (root) CMD (command -v debian-sa1 > /dev/null && debian-sa1 1 1)
这是筛子规则:
require ["variables","fileinto","mailbox","vnd.dovecot.execute"];
if address :matches "from" "*" { set "from" "${1}"; }
if anyof ( header :contains "subject" "unsubscribe neighbours",header :contains "subject" "unsubscribe neighbors") {
execute "smtp" "-neighbors=${from}";
fileinto :create "Unsubscribe.Neighbors";
} elsif address :contains "from" ["mailer-daemon","postmaster","internet mail delivery"] {
if header :matches "X-Failed-Recipients" "*" {
execute "smtp" "-email=${1}";
fileinto :create "Mail Delivery System";
} else {
fileinto :create "Mail Delivery System.Warning";
}
} else {
# The rest goes into INBOX
# default is "implicit keep",we do it explicitly here
keep;
}
在/etc/dovecot/conf.d/90-sieve.conf
中尝试vsz_limit = 256M,没有成功
有人可以帮我修复它吗?
解决方法
对于可能偶然发现同一问题的任何人: 这似乎是由 Golang 1.14 及更高版本中内存分配器代码的更改引起的 - 请参阅 Go issue。 我已经能够通过将 lmtp 进程的 vsz_limit 设置为 768MB 来规避它。
,最后只需将go
改写为rust
:(一切正常。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。