ExtMail 较为便捷和基础的备份方法,是使用 rsync 工具(ExtMail已备有),如需定期备份还可以使用 crontab 任务计划(系统自带)。
使用 screen 命令,进行会话操作,以防止SSH远程执行长时间命令时,意外断开导致命令执行终止。
具体的rsync命令,形如:
rsync –delete -a –progress /home/domains root@192.168.1.100:/mail_backup > /home/extmail_backup.log 2>&1
其中 –delete 代表如果第二次同步时,源已的文件,在备份目的中也跟着。如果没有此参数,则只同步源中新增的文件(首次备份可不添加,增加同步速度)。
/home/domains 代表备份源。
192.168.1.100代表存储备份的目的地,/mail_backup即备份目录。
执行命令时将保留同步记录到本地的 /home/extmail_backup.log
rsync走的是SSH通道,所以执行命令时需要输入备份目的地的SSH密码。
当然,如果是存储在其他硬盘或移动硬盘,则将上述命令 root@192.168.1.100:/mail_backup,更换为对应路径。
为保留文件的属性权限,请用root权限执行命令。
真机操作前,建议先作小测试。
—–
另外,上述提到可以使用crontab任务计划作定时备份,
则可执行 crontab -e
然后在底部添加一行
30 1-19/6 * * * (/usr/bin/rsync –delete -a –progress /home/domains root@192.168.1.100://mail_backup > /home/extmail_backup.log 2>&1)
其中rsync命令须要使用全路径。
30 1-19/6 * * * 代表 从凌晨1点30分到19点30分,每隔6小时,执行一次同步。
如,0 0 * * * 代表每天0时0分执行一次,
如,0 0 1 * * 代表每月的1号的0时0分执行一次。
编写完毕后,保存退出即可。
更准确和全面的介绍可以使用 man 5 crontab 手册和使用搜索引擎查找资料。
—–
如需在rsync完成后对文件进行打包,须确保文件的权限等相关属性被保留,建议使用tar(是否压缩,请按实际情况自行决定)。
如需恢复某用户的邮件,直接拷贝相应文件到用户Maildir的对应目录即可。