零基础也能写的服务器运维自动化脚本实战教程

为什么要学服务器运维自动化脚本?

手动重复执行备份、清理日志、重启服务不仅累,还容易出错。服务器运维自动化脚本就是让你把这些任务写成代码,由系统定时自动执行。
本文以最常用的 Linux Shell 脚本为例,带你从零写出第一个能用的自动化脚本。

动手前的准备

  • 一台 Linux 服务器(CentOS 7+ 或 Ubuntu 20.04+ 均可),已经通过 SSH 登录。
  • 基本的命令操作能力:会 cdlsvim 即可。
  • 一个文本编辑器(vim 或 nano),以及 crontab 工具(通常系统自带)。
  • 确认服务器已安装 bash(默认都有)。

如果你用的是宝塔面板,可以跳过命令行编辑,直接在“计划任务”里创建脚本,但本文依然推荐先理解原理。

第一步:写一个自动备份脚本

创建一个备份脚本文件:

vim /usr/local/bin/backup_www.sh

粘贴以下内容(按 i 进入插入模式,粘贴后按 Esc,输入 :wq 保存):

#!/bin/bash
# 自动备份 /www 目录到 /backup,保留最近7天的备份
BACKUP_DIR="/backup"
SOURCE_DIR="/www"
TIMESTAMP=$(date +%Y%m%d_%H%M%S)

mkdir -p $BACKUP_DIR

tar -czf $BACKUP_DIR/www_$TIMESTAMP.tar.gz $SOURCE_DIR 2>/dev/null

# 删除7天前的备份
find $BACKUP_DIR -name "www_*.tar.gz" -mtime +7 -exec rm -f {} \;

echo "Backup completed: www_$TIMESTAMP.tar.gz"

给脚本执行权限:

chmod +x /usr/local/bin/backup_www.sh

第二步:用 crontab 实现定时执行

输入以下命令编辑当前用户的 crontab:

crontab -e

如果是第一次使用,会提示选择编辑器,选 2(vim)即可。
然后在文件末尾添加一行(每天凌晨3点执行一次):

0 3 * * * /usr/local/bin/backup_www.sh >> /var/log/backup.log 2>&1

保存退出。
查看定时任务列表:

crontab -l

如果看到刚才添加的行,说明设置成功。宝塔面板用户可以在“计划任务”里添加任务,类型选“Shell脚本”,时间设每天3点,脚本内容粘贴上面代码。

避坑指南与高频问题

脚本没有执行权限? 使用 chmod +x 后还报权限错误,检查脚本第一行 #!
/bin/bash
是否正确,以及文件所有者是否有执行权。

备份文件过大怎么办? 可以在 tar 命令中加入 --exclude 排除不需要的文件,比如缓存目录:--exclude='/www/cache'

crontab 不执行? 先检查脚本本身能否手动运行:/usr/local/bin/backup_www.sh
如果手动没问题,查看系统日志:grep CRON /var/log/syslog(CentOS 请查看 /var/log/cron)。
注意脚本中的路径要写绝对路径,crontab 的环境变量有限。

备份文件占满磁盘? 脚本中 find 使用 -mtime +7 删除旧文件,建议先手动测试 find 命令是否正确匹配文件。
可以改成 -mtime +3 保留3天。

验证自动化脚本是否生效

等一个执行周期(或手动测试)后,检查备份目录:

ls -lh /backup/

你会看到类似 www_20250325_030000.tar.gz 的文件。
打开日志确认:

cat /var/log/backup.log

输出应为 Backup completed: www_20250325_030000.tar.gz
若没有,检查日志是否有错误提示。

你也可以临时修改 crontab 为每分钟执行一次来快速验证:

* * * * * /usr/local/bin/backup_www.sh >> /var/log/backup.log 2>&1

等一两分钟后看到备份文件生成,再改回正常时间即可。

最后提醒:编写服务器运维自动化脚本时,先在小范围测试,确认无误后再部署到生产环境。
遇到异常优先回看本文的高频问题部分,通常能快速定位。
如果你正在使用宝塔面板,可以结合面板的通知功能在脚本末尾加入 curl 推送消息到手机,真正实现无人值守。

分享到:
上一篇
Docker部署Wavefront:从零开始搭建指标采集代理
下一篇
宝塔面板网站访问速度提升:宝塔面板网站速度慢?零基础优化全流
1
系统公告

泽御云五一特惠活动🔥

泽御云持证合规运营,资质齐全可查,长久稳定! 五一限时多重福利同步开启: ✅ 香港 2 核 2G 云服务器超值拼团,低价入手团长免费 ✅ 4 核 4G 多机房年付拼团,性价比拉满 ✅ 内蒙古新区限时 7 折(zeyuyunnmg)特惠,专属优惠码锁价续费 ✅ 全站通用 75 折优惠,老用户充值享专属赠金 官方站点:zeyuyun.com 合规资质齐全|售后有保障|活动限时错过不再有
服务中心
客服
在线客服
24小时为您服务
咨询
联系我们
联系我们,为您的业务提供专属服务。
24/7 技术支持
如果您遇到寻求进一步的帮助,请过工单与我们进行联系。
24/7 即时支持
泽御云
售前客服
泽御云
泽御云
售后客服
泽御云
技术支持
评价
您对当前页面的整体感受是否满意?
😞
非常不满意
😕
不满意
😐
一般
🙂
满意
😊
非常满意