前言
以下是以备份饥荒存档为实例,网站文件和数据库均可以此实例进行修改,如有疑问请留言
对于服务器经常备份,好处就是遇到问题以后可以迅速的恢复,不那么被动,防止信息丢失,操作性很大。虽然搭建一个平台或网站非常容易,但为了应对网络上各种各样的意外情况,避免自己的数据付诸东流,做好数据备份是非常有必要的。
目前邮箱支持附件文件,将数据备份完毕后发送到自己的邮箱是一个比较不错的备份方式,也可以防止备份文件丢失。
正文
安装宝塔面板:
Centos安装命令:
yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh ed8484bec
Ubuntu/Deepin安装命令:
wget -O install.sh http://download.bt.cn/install/install-ubuntu_6.0.sh && sudo bash install.sh ed8484bec
Debian安装命令:
wget -O install.sh http://download.bt.cn/install/install-ubuntu_6.0.sh && bash install.sh ed8484bec
若您看到的博客时间已经稍晚一些,请移步至宝塔官网:宝塔面板下载
笔者环境
操作系统:CentOS 7.9.2009 x86_64(Py3.7.9)
宝塔版本:免费版 7.9.3
安装mailx
yum install -y mailx
编辑配置文件
安装完成后,编辑邮箱服务的相关配置文件。
在终端输入以下命令,然后回车进入编辑文件界面。
vim /etc/mail.rc
最后一行,删除
set bsdcompat
,并在# For Linux and BSD, this should be set.
下行输入以下内容:
以下配置使用
QQ邮箱
,如有其他邮箱请自行更改,更改方法在下方。
set from=发件人@qq.com
#发送邮件后显示的邮件发送方 需要修改
set smtp=smtps://smtp.qq.com:465
#SMTP服务器的网址及端口 需要修改
set smtp-auth-user=发件人@qq.com
#发送邮箱 需要修改
set smtp-auth-password=邮箱密码/SMTP授权码
#设置的邮箱密码,SMTP授权密码 需要修改
set smtp-auth=login
#动作、登录 无需修改
set ssl-verify=ignore
#ssl验证忽略 无需修改
set nss-config-dir=/etc/pki/nssdb
#证书存放目录 无需修改
邮箱密码/授权码:
QQ邮箱:点我访问QQ邮箱
配置修改完成后,按Esc键,输入
:wq
回车保存退出编辑界面。
测试发送邮件
在终端输入发送测试邮件命令,需要修改收件人邮箱,回车执行。
echo "这是一封测试邮件" | mail -s "邮件主题" 收件人@qq.com
如果发现终端报以下错误(但没有影响收件),没有错误请跳过。
Error in certificate: Peer's certificate issuer has been marked as not trusted by the.
报错解决方法
- 结束命令:
Ctrl+C
/Enter
Ctrl+C 或 Enter
- 修改邮箱服务配置文件:
vim /etc/mail.rc
vim /etc/mail.rc
将:set ssl-verify=ignore
改为:set ssl-verify=strict
保存退出::wq
set ssl-verify=strict
- 修改完成后在终端输入以下命令。
获取邮件服务器证书
echo -n " " | openssl s_client -connect smtp.qq.com:465 | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFIICATE-/p' > /etc/pki/nssdb/qq.crt
把证书添加到受信任表
certutil -A -n 'yeah' -t "P,P,P" -d /etc/pki/nssdb -i /etc/pki/nssdb/qq.crt
如果是163或者其他邮箱服务器请将smtp.qq.com改为smtp.163.com,qq.crt改为163.crt 以此类推。
命令执行完成后,重新执行发送测试邮件命令,不再报错。
宝塔定时任务
宝塔面板网页端 左侧 → 计划任务
按自己需求(计划任务执行时间,保留文件数量等)添加网站和数据库源文件备份任务。
然后添加
shell脚本
任务,在脚本内容中添加以下脚本命令,修改收件人为自己的邮箱。
#!/bin/bash
cd /www/backup/path
# /www/backup/path为路径,若为网站备份请自行查看备份后所在目录。
for file in $(ls *)
do
str="${str} -a ${file}"
done
echo "您好,今天的饥荒服务器数据备份已送达您的邮箱,请注意查收附件!" | mail -s "饥荒服务器备份" $str 2807306273@qq.com
注:如果有报错或收不到邮件情况,请仔细检查命令,配置文件是否有误,或者查看脚本执行日志进行排查。