每当我将邮件放入Maildir/.Send/cur/
文件夹并在 Thunderbird 中查看此电子邮件时,文件名突然变为如下形式:
1573421271.M387702P15858.域名.com:2,S
对我来说这没问题,但 Thunderbird 非常不稳定。有时不会发生这种情况。
可以关闭此功能吗?或者,我能弄清楚这些数字的含义吗?我知道第一个是纪元。那么小数点后的数字呢?
谢谢
答案1
1573421271.M387702P15858.域名.com:2,S
这实际上是标准文件名格式用于 Maildir 内的消息。
子目录中的名称cur
并不是完全静态的:后面的部分:
是信息/标志字段,除其他信息外,还指示消息是否已被看到(已读)、是否已被回复或者转发等等。
因此,Thunderbird 需要重命名该文件以将消息标记为“已读”;如果该文件之前有一些任意名称(根据 Maildir 标准无效),通常应用程序最终也会为其生成一个新的有效名称前缀。
名称的主要部分(左侧:
)由邮件应用程序(或通常由邮件送货程序或 IMAP 服务器)。它们的唯一目的是确保文件名独特的,这样发送到同一个文件夹的多个邮件就不会互相冲突。
例如,M387702
是来自同一纪元时间的微秒数,P15858
是执行传送的程序的进程 ID,V<num>
以及I<num>
是文件的设备和 inode 编号。
(规范并没有说前缀必须包含可解析的信息——它只是必须是唯一的。但是,可能有逗号分隔的扩展字段向某些邮件服务(如 Dovecot)提供额外信息。
可以关闭此功能吗?
不。Thunderbird 只是遵循 Maildir 格式规则。
你可以声称任何足够独特的前缀都是有效的——格式规范也会同意——但是一旦消息从它移动new/
到cur/
它必须附加了后缀:2,<flags>
。
因此,egcur/My Little Message.eml:2,
是一个有效的名称,但cur/My Little Message.eml
单独使用则不是。