linux-定时任务

简介: linux-定时任务

一、crond命令

1、什么是计划任务

  • 周期性任务执行
  • 清空/tmp目录下的内容
  • mysql数据库备份
  • redis数据备份

这就用到了crond服务

检查crond服务相关的软件包

[root@localhost ~]# rpm -qa | grep cron
cronie-anacron-1.4.11-11.el7.x86_64
crontabs-1.11-6.20121102git.el7.noarch
cronie-1.4.11-11.el7.x86_64
[root@localhost ~]#

rpm -ivh 安装rpm软件

rpm -qa 查看软件是否安装

rpm -ql 查看软件详细信息

rpm -qf 查看命令属于的安装包

rpm -e 卸载软件

先查看是否安装crond服务相关软件包

[root@localhost ~]# rpm -qa cron*
cronie-anacron-1.4.11-11.el7.x86_64
crontabs-1.11-6.20121102git.el7.noarch
cronie-1.4.11-11.el7.x86_64
[root@localhost ~]#

查看是否正在运行

2、crond服务的概念

  • cron 定时任务的名字
  • crond 定时任务的进程名
  • crontab 管理定时任务命令

3、crontab

f1 f2 f3 f4 f5 program

- 其中 f1 是表示分钟,f2 表示小时,f3 表示一个月份中的第几日,f4 表示月份,f5 表示一个星期中的第几天。program 表示要执行的程序。


二、at命令

1、at任务的概念

  • at定时任务工具,依赖于atd服务,适用于执行一次就结束的调度任务
  • 例如突发任务,某天夜里三点需要临时性备份数据,可以使用at软件

2、at实例


三、邮件服务

1、概念

任务计划触发执行后,会通过邮件发给用户,(并非互联网上的邮件,而是系统内部i的邮件服务)

检查服务器端口,25号邮件端口是否打开,centos5是sendmail,centos6、7是postfix服务

ss -tnl | grep 25 netstat -tnl | grep 25 需要下载net-tools

2、启动postfix

vim /etc/postfix

- 确保inet_protocols = all

三个服务的区别


四、mailx命令

1、三个概念:

MTA:Mail Transport Agent,邮件传送代理,也就是postfix服务

MUA:Mail User Agent , 收发邮件的客户端,可以是foxmail,也可以是其他客户端

Centos7通过命令mailx发送邮件,通过mail命令接收邮件

2、交互式发邮件

给root系统用户发送邮件

[root@localhost ~]# mailx -s "hello root" root
nihao root
EOT

mail查看收到的邮件

Heirloom Mail version 12.5 7/5/10.  Type ? for help.
"/var/spool/mail/root": 3 messages 1 new
    1 root                  Thu Sep 28 13:23  19/634   "hello root"
    2 root                  Thu Sep 28 13:23  19/626   "hello root"
>N  3 root                  Thu Sep 28 13:24  18/615   "hello root"
&

看详细信息

3、非交互式发邮件

[root@localhost ~]# echo "i am sender" > fine.txt
[root@localhost ~]# mail -s "nihao root" root < fine.txt

查看邮件


四、cron定时任务实践

1、系统定时任务配置文件

crond进程提交任务的方式与at不同,crond需要读取配置文件,且有固定的文件格式,通过crontab命令管理文件。

crond任务分为两类

  • 系统定时任务

crond服务除了在工作时查看/var/spool/cron 文件夹下的定时任务文件以外,还会查看/etc/cron.d目录以及/etc/anacrontab 下面的文件内容,里面存放每天,每天,每月需要执行的系统任务

[root@localhost ~]# ls -l /etc/cron.d total 4 -rw-r--r--. 1 root root 128 Jan 27 2014 0hourly
[root@localhost ~]# ls -l /etc/anacrontab -rw-------. 1 root root 541 Jan 27 2014 /etc/anacrontab

2、用户定时任务计划

当系统管理员(root)或者是普通用户船舰了需要定时执行的任务,可以使用crontab命令配置

crontab -l 查看以及设置的定时任务

crontab -e

[root@localhost ~]# cat /tmp/1
i am root
[root@localhost ~]# crontab -l
* * * * * /usr/bin/echo "i am root" > /tmp/1

3、检查crond服务是否运行

[root@localhost ~]# systemctl is-active crond
active
[root@localhost ~]# ps -ef|grep crond
root        936      1  0 Sep27 ?        00:00:00 /usr/sbin/crond -n
root       7613   6760  0 17:09 pts/0    00:00:00 grep --color=auto crond
[root@localhost ~]#

定时任务相关文件

/var/spool/cron 定时任务的配置文件所在目录

/var/log/cron 定时任务日志文件

/etc/cond.deny 定时任务黑名单

相关文章
|
6月前
|
监控 Ubuntu Linux
linux下添加定时任务
linux下添加定时任务
45 0
|
10天前
|
监控 Unix Linux
|
15天前
|
Linux
Linux Crontab 查看定时任务启动没
【10月更文挑战第20天】在Linux系统中,crontab用于设置周期性执行的任务。查看当前用户的Crontab任务列表,使用`crontab -l`;查看所有用户任务,使用`sudo crontab -l`或指定用户`sudo crontab -u username -l`。
38 5
|
5月前
|
Unix Linux
Linux中的Crontab:定时任务管理器
`crontab`是Linux下的定时任务管理器,用于设置周期性执行的任务。用户可以通过`crontab -l`查看任务,`crontab -e`编辑,`crontab -r`删除任务。任务格式为:`* * * * * command`,分别代表分钟、小时、日期、月份、星期,例如`30 10 * * * /path/to/script.sh`。注意确保命令有执行权限,处理环境变量,并关注日志文件 `/var/log/syslog` 或 `/var/log/cron`。学会使用`crontab`能有效自动化Linux系统的日常任务。
|
3月前
|
存储 运维 监控
运维.Linux下执行定时任务(中:Cron的常用替代方案)
本文是关于Linux下执行定时任务系列的第二部分,主要探讨除了Cron之外的常用替代方案。介绍了Systemd Timers、Anacron及at命令三种工具,它们分别适用于不同场景下的定时任务需求。文章详细分析了每种工具的特点、工作原理、基本使用方法及其高级功能,并对比了它们各自的优缺点,帮助读者根据实际情况选择最适合的定时任务解决方案。此外,还提供了指向具体实例和进一步阅读材料的链接。
118 4
运维.Linux下执行定时任务(中:Cron的常用替代方案)
|
3月前
|
监控 安全 Linux
在Linux中,如何设置定时任务(cron job)?
在Linux中,如何设置定时任务(cron job)?
|
4月前
|
数据挖掘 Linux Shell
linux 使用crontab 创建定时任务
linux 使用crontab 创建定时任务
103 0
linux 使用crontab 创建定时任务
|
3月前
|
存储 运维 监控
运维.Linux下执行定时任务(上:Cron简介与用法解析)
运维.Linux下执行定时任务(上:Cron简介与用法解析)
50 0
|
5月前
|
关系型数据库 MySQL Shell
【权限提升】Linux系统&环境变量&定时任务&权限配置不当&MDUT自动化
【权限提升】Linux系统&环境变量&定时任务&权限配置不当&MDUT自动化
|
5月前
|
监控 网络协议 Ubuntu
【权限维持】Linux&Rootkit后门&Strace监控&Alias别名&Cron定时任务
【权限维持】Linux&Rootkit后门&Strace监控&Alias别名&Cron定时任务