温馨提示×

Ubuntu邮件服务器怎么备份

小樊
44
2026-07-05 12:50:55
栏目: 云计算

在 Ubuntu 上备份邮件服务器,通常要分三部分:邮件数据、数据库(如有)、配置文件。下面给你一套通用、可落地的备份方案,适用于常见的邮件系统(Postfix / Dovecot / Roundcube / iRedMail / Mailcow 等)。


一、先明确你用的邮件系统

常见组合:

  • Postfix + Dovecot(最常见)
  • iRedMail
  • Mailcow
  • Zimbra(备份方式不同)

下面以 Postfix + Dovecot(含 Roundcube)为例说明。


二、需要备份的核心内容

1️⃣ 邮件数据(最重要)

Dovecot 默认存储位置:

/var/mail/
/var/vmail/
/home/*/Maildir/

查看实际路径:

grep mail_location /etc/dovecot/dovecot.conf

✅ 备份示例:

rsync -aAXv /var/vmail/ /backup/mail-data/

建议:

  • 使用 rsync
  • 保留权限和 ACL(-aAX

2️⃣ 邮件服务器配置文件

/etc/postfix/
/etc/dovecot/
/etc/ssl/
/etc/opendkim/
/etc/opendmarc/
/etc/default/

✅ 备份:

tar czvf /backup/mail-config-$(date +%F).tar.gz \
/etc/postfix \
/etc/dovecot \
/etc/ssl \
/etc/opendkim \
/etc/opendmarc

3️⃣ 数据库(如果使用 MySQL / MariaDB)

Roundcube、iRedMail 等会用到数据库。

备份所有数据库:

mysqldump -u root -p --all-databases > /backup/mysql-$(date +%F).sql

或只备份邮件相关库:

mysqldump -u root -p roundcube > /backup/roundcube.sql

4️⃣ 用户和系统账号

如果邮件用户是系统用户:

/etc/passwd
/etc/shadow
/etc/group

✅ 备份:

tar czvf /backup/user-accounts.tar.gz \
/etc/passwd /etc/shadow /etc/group

三、推荐完整备份脚本(可直接用)

#!/bin/bash
BACKUP_DIR="/backup/mailserver"
DATE=$(date +%F)

mkdir -p $BACKUP_DIR

# 邮件数据
rsync -aAXv /var/vmail/ $BACKUP_DIR/maildata/

# 配置
tar czvf $BACKUP_DIR/config-$DATE.tar.gz \
/etc/postfix /etc/dovecot /etc/ssl

# 数据库
mysqldump -u root -p --all-databases > $BACKUP_DIR/mysql-$DATE.sql

echo "Mail server backup completed: $DATE"

赋予执行权限:

chmod +x /root/backup-mail.sh

四、定时自动备份(cron)

编辑定时任务:

crontab -e

每天凌晨 2 点备份:

0 2 * * * /root/backup-mail.sh >> /var/log/mail-backup.log 2>&1

五、异地 / 云端备份(强烈建议)

✅ 方案 1:rsync 到另一台服务器

rsync -avz /backup/mailserver/ user@backup-server:/data/mail-backup/

✅ 方案 2:rclone 备份到云

rclone sync /backup/mailserver remote:mail-backup

六、Docker / Mailcow 的情况(如果你是 Docker)

Mailcow:

cd /opt/mailcow-dockerized
docker compose exec mysql mysqldump -u root -p mailcow > mailcow.sql

数据目录:

/opt/mailcow-dockerized/vmail

七、恢复思路(简要)

  1. 重装同版本系统
  2. 恢复配置文件
  3. 恢复邮件数据
  4. 恢复数据库
  5. 检查权限 + 重启服务

八、总结(推荐备份清单 ✅)

类型 路径
邮件 /var/vmail 或 /var/mail
配置 /etc/postfix, /etc/dovecot
证书 /etc/ssl
数据库 mysqldump
用户 /etc/passwd 等

如果你愿意,可以告诉我:

  • ✅ 你用的是 哪种邮件系统
  • ✅ 是否 Docker
  • ✅ 是否是 生产环境

我可以给你一份完全针对你环境的备份方案

0