Linux计划任务与日志的管理
at计划任务及crontab定时任务的使用方法
Linux系统可以通过提前做一些设置,来让计算机定时替我们执行一些命令,这被称为定时任务。而遇到一些临时需要执行的事情或任务时,可以通过命令告诉计算机把这个事情或任务做一下。
在Linux中,可以通过crontab和at命令来实现这些功能。
计划任务的作用:做一些周期性的任务,在生产中主要用来定期备份数据。
任务调度分两种:系统任务调度、用户任务调度。
计划任务的安排方式分两种:一种是突发性的,就是这个任务是临时决定的,只执行一次,这种计划任务在Linux中被称为at计划任务。另一种是定时性的,也就是每隔一定的周期就要重复执行,也称为周期性的计划任务,即crontab计划任务。
at计划任务的使用
命令使用格式:at 时间
使用at命令,需要开启atd服务。
systemctl start atd #开启atd 服务
systemctl is-enabled atd #查看是否开机启动atd服务
CentOS 6中查看开机启动服务使用chkconfig命令
chkconfig--list | grep atd1.使用at创建计划任务
[root@testhost ~]# date #查看系统时间
Fri Jul 23 10:10:04 CST 2021
[root@testhost ~]# at 10:11:30
syntax error. Last token seen: :
Garbled time
[root@testhost ~]# at 10:11
at> mkdir at_test
at> <EOT> #结束:按CTRL+d 组合键
job 1 at Fri Jul 23 10:11:00 2021
[root@testhost ~]# date
Fri Jul 23 10:11:07 CST 2021
[root@testhost ~]# ll
total 38492
-rw-r--r-- 2 root root 6 Jul 19 15:51 1_ln.txt
-rw-r--r-- 2 root root 6 Jul 19 15:51 1.txt
-rw-r--r-- 1 root root 328 Jul 14 15:30 2.txt
drwxr-xr-x 2 root root 4096 Jul 23 10:11 at_test
-rw-r--r-- 1 root root 49 Jul 14 15:16 a.txt
drwxr-xr-x 10 root root 4096 Jun 25 15:05 denyhosts2. 查看计划任务
问:如果正在执行命令,需要按Ctrl+d组合键,若按成Ctrl+s组合键会怎么样?
解决:按Ctrl+s组合键在Linux下是锁定屏幕显示的意思,这时整个屏幕被锁定,不能进行正常输入。按Ctrl+q组合键可以解除锁定。
3.删除at将要执行的计划任务
4. at计划任务的特殊写法

crontab定时任务的使用
Crond服务是Linux系统中用来定期检查是否有要执行的工作,如果有要执行的工作便会自动执行该工作。
cron是一个Linux下的定时执行工具,可以在无须人工干预的情况下运行作业。
Linux系统执行任务调度的工作主要是系统周期性所要执行的工作,如更新whatis数据库、更新updatedb数据库、日志定期切割、收集系统状态信息、/tmp目录定期清理等,这些工作都是通过crond服务来完成的。
启动crond服务
1.crontab命令参数介绍
例如:
crontab -u root -l:root用户查看自己的cron计划任务。
crontab -u san -r:root用户想删除san用户下的cron计划任务。
crontab -e编辑cron服务时的写法及格式如图:

星期日用0或7表示。一行对应一个任务,特殊符号的含义如表

2.创建计划任务
每天凌晨2点1分开始备份数据
客以非root用户添加计划任务。最好使用已经存在的系统用户添加。这里使用bin用户来添加。

问:如何排查所有用户的计划任务?
注:所有用户的计划任务,都会在/var/spool/cron/下产生对应的文件.

系统级别的计划任务。

实战:常见的计划任务写法和案例

任务计划案例要求如下:
① 每天2∶00备份/etc/目录到/tmp/backup目录下面。
② 将备份命令写入一个脚本中。
③ 每天备份,要求备份文件的文件名格式为2017-08-19_etc.tar.gz。
④ 在执行计划任务时,不要输出任务信息。
⑤ 存放备份内容的目录要求只保留3天的数据。

注意:在生产中的备份文件不要放到/tmp目录下,因为/tmp是临时目录,系统会定时清除/tmp目录下长时间不使用的文件。
最后更新于
这有帮助吗?