Linux--计划任务

一、什么是计划任务

每个人在生活当中或多或少都有一些工作,有的工作是按照一定周期循环的, 例如每天固定时间的闹铃、工作打卡等等; 有的工作则是临时发生的,例如刚好有亲友到访,需要你在一个特定的时间去车站迎接! 这个时候 Linux 的计划任务就可以派上场了! 在不考虑硬件与我们服务器的连接状态下,我们的 Linux 可以帮你提醒很多任务, 那么 Linux 的例行性工作是如何进行的? Linux 是通过 crontab 与 at 命令来实现的

at :

at 是个可以处理仅执行一次就结束工作的命令,需要一个叫atd的服务支持,所以这个服务要启动

crontab :

crontab 这个命令所设定的工作将会按照一定的周期去执行! 可循环的时间为分钟、小时、日期、每周、每月等。crontab 除了可以使用命令执行外,也可以通过编辑 /etc/crontab 来支持。与at相同,crontab也需要一个叫crond的服务

那么计划任务在系统当中到底有什么作用呢?

1、进行日志的切割 (log rotate): Linux 会主动的将系统所发生的各种信息都记录到日志中。随着使用时间的增长,日志文件会越来越大!我们知道大型文件不但占容量还会造成读写效能的困扰, 因此适时的将日志文件数据挪一挪,让旧的数据与新的数据分别存放,这样既能记录日志信息又能提高读写效率。这就是 logrotate 的任务!

2、日志文件分析 logwatch 的任务: 如果系统发生了问题等,绝大部分的错误信息都会被记录到日志文件中, 因此系统管理员的重要任务之一就是分析日志。但你不可能手动通过 vim 等软件去查看日志文件,因为数据量太大! 我们可以通过一个叫“ logwatch ”的程序分析日志信息,在启动邮件服务的前提下,你的 root 老是会收到标题为 logwatch 的信件

3、建立 locate 的数据库: 有时候我们会通过locate命令来查询文件。而文件名数据库是放置到 /var/lib/mlocate/ 中。 这个数据库也是通过计划任务定期的执行updatedb命令去更新的

4、RPM 软件日志文件的建立:

系统会经常安装或卸载软件包。为了方便查询,系统也会将这些软件包的名称进行记录! 所以计划任务也会定期帮助我们更新rpm数据库

5、移除临时文件: 软件在运行中会产生一些临时文件,但是当这个软件关闭时,这些临时文件可能并不会主动的被删除。有些时候这些文件对于系统来讲没有什么用处了,还占用磁盘空间。系统通过计划任务来定期来删除这些临时文件!

二、仅执行一次的计划任务

首先,我们先来谈谈仅运行一次的计划任务at

2.1、 atd 的启动与 at 运行的方式

在使用at之前我们要确保atd服务是运行的,这个需要我们去检查一下,因为并不是所有的发行版linux默认都是开启这个服务的,但是在CentOS中是默认开启的

[root@zutuanxue ~]# systemctl status atd
● atd.service - Job spooling tools
   Loaded: loaded (/usr/lib/systemd/system/atd.service; enabled; vendor preset: enabled)
   Active: active (running) since Mon 2020-01-13 09:34:03 CST; 1h 17min ago
#查询atd服务的状态
​
[root@zutuanxue ~]# systemctl is-enabled atd
enabled
​
#查询是否开启默认启动
​
如果没有启动
[root@zutuanxue ~]# systemctl start atd  
# 启动
[root@zutuanxue ~]# systemctl enable atd
#设置为开启启动

at的工作模式

at在运行的时候会将定义好的工作以文本文件的方式写入 /var/spool/at/ 目录内,该工作便能等待 atd 这个服务的调用,但是出于安

09-10 161
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值