当前位置:首页>Linux>Linux30天入门计划|Day9:日志管理 + Crontab定时任务,实现服务器自动化运维

Linux30天入门计划|Day9:日志管理 + Crontab定时任务,实现服务器自动化运维

  • 2026-10-11 05:38:52
Linux30天入门计划|Day9:日志管理 + Crontab定时任务,实现服务器自动化运维

前面8天,我们掌握了Linux文件操作、权限、用户、检索、文本处理、系统监控。

今天进入自动化运维核心技能:

系统日志管理、Crontab定时任务。

真正的生产服务器,90%的自动化工作全部靠 Crontab 完成:

定时备份、定时清理日志、定时采集数据、定时重启服务。

学会今天内容,你的Linux能力从「手动操作」升级为「自动化运维」。

一、今日学习目标

✅ 掌握Linux系统核心日志文件位置与作用

✅ 学会日志查看、筛选、清理、轮转思路

✅ 精通 Crontab 定时任务语法

✅ 熟练配置每分钟/每小时/每天定时任务

✅ 掌握企业常用定时脚本模板与避坑规范

二、Linux核心系统日志详解

Linux所有系统、登录、报错、服务记录全部保存在  /var/log  目录

1、核心日志文件

-  /var/log/messages :系统全局日志(硬件、服务、系统报错)

-  /var/log/secure :安全日志、登录记录、爆破记录(排查入侵必看)

-  /var/log/cron :定时任务执行日志

-  /var/log/boot.log :系统开机启动日志

-  /var/log/dmesg :硬件驱动、内核报错日志

2、日常日志排查套路

bash  

# 查看最新日志

tail -f /var/log/messages

# 筛选报错日志

grep -i "error" /var/log/messages

# 查看最近登录异常

grep -i fail /var/log/secure

3、日志清理重要规范

严禁直接 rm 删除正在写入的日志文件!

会导致磁盘空间不释放、服务卡死。

正确清空日志方式:

bash  

> /var/log/messages

三、Crontab 定时任务核心语法

1、开启定时任务编辑

bash  

crontab -e

2、查看已有的定时任务

bash  

crontab -l

3、删除所有定时任务

bash  

crontab -r

4、五星语法口诀(重中之重)

plaintext  

分 时 日 月 周  执行命令

字段对应:

- 分:0-59

- 时:0-23

- 日:1-31

- 月:1-12

- 周:0-6(0为周日)

特殊符号:

-  *  每单位

-  */n  每隔n时间

-  ,  指定多个时间

-  -  时间段

四、高频实战定时任务模板(企业直接用)

1、每分钟执行一次

plaintext  

* * * * *  echo "每分钟测试" >> /home/test.log

2、每小时执行一次

plaintext  

0 * * * *  /home/backup.sh

3、每天凌晨2点执行备份

plaintext  

0 2 * * *  /home/backup.sh

4、每周日凌晨3点清理日志

plaintext  

0 3 * * 0  > /var/log/messages

5、每隔10分钟执行一次

plaintext  

*/10 * * * *  /home/run.sh

五、生产环境常用实战场景

场景1:定时自动清理日志(最常用)

plaintext  

0 1 * * *  find /home/logs -name "*.log" -mtime +7 -delete

含义:每天凌晨1点,删除7天前所有日志文件

场景2:定时数据库备份

plaintext  

0 2 * * *  /usr/bin/mysqldump -uroot -p123456 db > /home/dbback.sql

场景3:定时重启Nginx

plaintext  

0 4 * * *  systemctl restart nginx

六、Crontab 九大避坑指南(新手必看)

1. 所有命令必须写绝对路径(crontab环境变量极少)

2. 脚本必须加执行权限  chmod +x 

3. 时间写错是90%报错根源

4. 定时任务务必重定向日志,否则邮件报错堆积

5. 不要用rm -rf 写定时任务,极易误删系统文件

6. 周和日不要同时混用,容易时间冲突

7. 修改完一定要 crontab -l 核对

8. 系统重启后定时任务默认保留

9. 测试任务优先用每分钟测试,调试成功再改周期

七、今日实操作业(必敲)

bash  

# 1. 查看系统现有定时任务

crontab -l

# 2. 编辑定时任务

crontab -e

# 3. 添加一条每分钟写入日志的测试任务

* * * * * echo "Linux Day9 定时任务测试" >> /home/cron_test.log

# 4. 等待一分钟查看效果

tail -f /home/cron_test.log

# 5. 清空定时任务(测试完成)

crontab -r

八、今日知识点总结

1.  /var/log  是系统所有日志核心目录,排查故障首选

2. 正在运行的日志不可以rm删除,必须用  >  清空

3. Crontab 是Linux自动化核心,语法:分 时 日 月 周

4. 生产最常用:每日备份、定时清理日志、定时重启服务

5. 定时任务必须使用绝对路径,是新手最大坑点

6. 学会自动化任务,彻底摆脱重复手动运维操作

✅ 至此,你已经掌握 Linux日常运维90%的核心能力!

最新文章

随机文章