为什么`postmap`会生成如此庞大的数据库?

为什么`postmap`会生成如此庞大的数据库?

我有一行代码/etc/postfix/generic用于通过我的电子邮件提供商配置 smtp 中继的地址映射。运行sudo postmap /etc/postfix/generic会从这个 52 字节的文本文件生成一个 29,360,128 字节的 Berkeley DB 文件。这似乎有点过分了!

类似地,一个 65 字节的/etc/postfix/sasl_passwd文件在 DB 形式下会膨胀到 37,748,736 字节。

这是 macOS High Sierra 上的 APFS 分区。Sierra 上的 HFS+ 分区上的类似文件会生成更合理的 16384 字节文件,这让我怀疑这是否与块大小有关,而 APFS 是否会导致发生奇怪的事情?

答案1

我认为你对文件系统问题的看法是正确的。

我在 centos 6 上运行 postfix 中继,我的所有 berkley DB 文件都是相同的大小,无论它们的原始文件是什么

-rw-r--r-- 1 root root 20497 Oct 14 23:00 access
-rw-r--r-- 1 root root 12288 Oct 14 23:00 access.db
-rw-r--r-- 1 root root  1802 Oct 11 23:21 recipient_access
-rw-r--r-- 1 root root 12288 Oct 11 23:21 recipient_access.db
-rw-r--r-- 1 root root  2140 Jan 17 14:31 sender_access
-rw-r--r-- 1 root root 12288 Jan 17 14:31 sender_access.db
-rw-r--r-- 1 root root 12609 Oct 21 15:09 transport
-rw-r--r-- 1 root root 12288 Oct 21 15:09 transport.db
-rw-r--r-- 1 root root 12494 Mar 27  2007 virtual
-rw-r--r-- 1 root root 12288 Dec  8  2016 virtual.db

相关内容