You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何从Mailman邮件服务器备份的.pck文件中提取邮件列表?

如何从Mailman邮件服务器备份的.pck文件中提取邮件列表?

别慌!我完全理解你现在的处境——管理员突然离职没交接,关键的邮件列表还锁在这些奇怪的.pck文件里,太闹心了。好在你猜的没错,这些文件就是Mailman邮件服务器用来存储列表数据的,下面我给你两种简单的方法来提取里面的内容:

方法一:用Python直接读取(快速查看,无需搭建环境)

这些.pck文件是Python的pickle格式(把Python对象转成二进制存储的格式),我们可以用Python直接解析:

  • 先确认服务器上有Python:打开终端输入python3 --version或python --version,Mailman本身就是Python写的,大概率已经安装好了。
  • 进入到某个邮件列表的备份文件夹(比如lists/你的列表名/目录下)。
  • 新建一个文本文件(比如叫read_list.py),把下面的代码粘进去:
import pickle

# 读取核心配置文件config.pck,这里存着订阅者和列表基础信息
try:
    with open('config.pck', 'rb') as f:
        # 如果是旧版Mailman(用Python2生成的文件),把下面一行改成:
        # config_data = pickle.load(f, encoding='latin1')
        config_data = pickle.load(f)
    
    print("=== 邮件列表基本信息 ===")
    print(f"列表名称: {config_data['list_name']}")
    print(f"列表描述: {config_data['description']}")
    
    print("\n=== 已订阅成员列表 ===")
    # 不同Mailman版本存储订阅者的键可能不同,两种情况都试一下
    if 'members' in config_data:
        for email in config_data['members']:
            print(email)
    elif 'member_dict' in config_data:
        for email, _ in config_data['member_dict'].items():
            print(email)
    else:
        print("未找到订阅者数据,可尝试打印config_data查看所有字段")

except Exception as e:
    print(f"读取出错了: {e}")
    print("如果是版本兼容问题,记得给pickle.load加上encoding='latin1'参数")
  • 保存文件后,在终端运行python3 read_list.py(如果是Python2就用python read_list.py),就能看到列表的订阅者和基础信息了。

方法二:临时搭建Mailman环境恢复备份(可视化查看,更直观)

如果觉得写代码麻烦,可以用这个更“傻瓜”的方法:

  • 找一台临时服务器或本地电脑,安装和你原服务器一致版本的Mailman(比如原先是Mailman 2.1就装2.1版本,Mailman 3就装3.x)。
  • 把备份的整个lists文件夹复制到Mailman的列表存储目录:
    • Mailman 2.x默认目录:/var/lib/mailman/lists/
    • Mailman 3默认目录:/opt/mailman/core/var/mailman/lists/(不同安装方式可能有差异)
  • 重启Mailman服务,然后访问Mailman的web管理界面(比如Mailman2是http://服务器IP/mailman/admin/),就能直接看到所有恢复的邮件列表,可视化查看订阅者和配置。

小提示

  • pending.pck存的是待批准的订阅请求,request.pck是退订等用户请求,核心订阅数据都在config.pck里;
  • 操作时只读取文件,不要修改,避免破坏备份;
  • 如果遇到Python版本不兼容的报错,记得加encoding='latin1'参数,这是旧版Mailman的常见问题。

备注:内容来源于stack exchange,提问作者issathi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.21 07:39:40