宝塔面板磁盘空间告警可通过三种方式配置:一、启用内置告警模块并配置SMTP邮箱;二、编写Shell脚本结合crontab定时执行;三、在计划任务界面添加Shell脚本任务,实现每10分钟检测与邮件提醒。

如果您发现宝塔面板中磁盘使用率持续升高,但未及时收到预警,可能是磁盘空间告警功能未正确启用或邮件通道配置不完整。以下是实现磁盘空间不足时自动邮件提醒的多种配置方法:
一、通过宝塔内置告警通知模块配置
该方式利用面板原生告警系统,无需编写脚本,适用于希望快速启用基础邮件提醒的用户。系统会在检测到根分区或其他挂载点使用率超过阈值时自动触发邮件发送。
1、登录宝塔面板,在左侧菜单栏点击面板设置 → 告警通知 → 告警设置 → 选择邮箱并点击“设置”。
2、在邮箱设置页面填写SMTP服务器地址、端口、发件人邮箱、SMTP授权码(非登录密码)及收件人邮箱,全部填写完毕后点击“保存”。
3、返回告警设置主页面,开启磁盘空间监控开关,并设置触发告警的阈值(例如85%),同时勾选启用磁盘空间不足告警。
4、点击测试告警按钮,验证邮件是否可正常送达;若失败,请检查邮箱SMTP服务是否已开启及授权码是否正确。
二、通过Shell脚本+系统计划任务实现精准监控
该方式可自定义监控路径、阈值、清理动作与多级告警逻辑,适用于对磁盘管理有精细化要求的生产环境,且不依赖宝塔告警模块的稳定性。
1、创建监控脚本文件:/scripts/disk_monitor.sh,并赋予执行权限:chmod +x /scripts/disk_monitor.sh。
2、在脚本中定义关键参数:设置THRESHOLD=80(单位为百分比)、LOG_FILE="/var/log/disk_clean.log"、EMAIL="admin@example.com"。
3、使用df -h / | awk 'NR==2 {print $5}' | tr -d '%'获取根分区当前使用率,并与阈值比较;若超限,则调用send_alert()函数发送邮件。
4、将脚本加入系统定时任务:执行crontab -e,添加一行:*/10 * * * * /scripts/disk_monitor.sh,表示每10分钟执行一次检测。
三、通过宝塔计划任务界面配置脚本执行
该方式避免直接操作Linux终端,适合不熟悉命令行但需保留脚本灵活性的用户,所有任务均在面板内可视化管理。
1、进入宝塔面板左侧菜单计划任务,点击添加计划任务。
2、任务类型选择Shell脚本,任务名称填写“磁盘空间监控”,执行周期设为每10分钟。
3、在脚本内容区域粘贴完整的监控逻辑,包括磁盘使用率采集、阈值判断、日志记录及mail -s "[告警]磁盘超限" "$EMAIL" 语句。
4、点击添加任务,确认状态为“正在运行”,并查看最近一次执行日志以验证脚本无语法错误。
四、配置第三方Webhook通道替代邮件(如企业微信/钉钉)
该方式绕过邮件服务商限制,提升告警到达率与响应速度,尤其适用于企业内部已有统一消息平台的场景。
1、在宝塔面板告警通知 → 自定义消息通道中点击“添加通道”。
2、通道名称填写“企业微信告警”,URL填写企业微信机器人Webhook地址(格式为:https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=xxx)。
3、消息模板中使用JSON格式构造请求体,包含msgtype: "text"与text.content字段,内容动态插入磁盘使用率变量。
4、在告警设置中启用该通道,并勾选磁盘空间不足时发送至此通道,保存后即可生效。










