设置如下:
①.)通过命令【crontab -e】编写计划任务
Linux系统的知识你可以看黑马程序员视频库的Linux教程,零基础都能学的.
crontab -l
列出用户计划任务
? ? ? -e? ? ? (edit user's crontab)
? ? ? -l? ? ? (list user's crontab)
? ? ? -r? ? ? (delete user's crontab)
? ? ? -i? ? ? (prompt before deleting user's crontab)
linux计划任务crontab配置文件中的最后一个星星代表所有可能的值
crontab命令用于设置周期性被执行的指令.该命令从标准输入设备读取指令,并将其存放于"crontab"文件中,以供之后读取和执行.
什么是计划任务,计划任务类似于我们平时生活中的闹钟.
在Linux系统的计划任务服务crond可以满足周期性执行任务的需求.
crond进程每分钟会处理一次计划任务, 计划任务主要是做一些周期性的任务目前最主要的用途是定时备份数据
Schedule one-time tasks with at. 一次性调度执行 at
Schedule recurring jobs with cron. 循环调度执行 cron
Schedule recurring system jobs. 所有计划任务执行中的输出都会以邮件的方式发送给指定用户, 除非重定向
// 循环调度执行cron 进程每分钟会处理一次计划任务
计划任务分为以下两种情况:
系统级别的定时任务:
清理系统缓存
临时文件清理
系统信息采集
日志文件切割
用户级别的定时任务:
定时同步互联网时间
定时备份系统配置文件
定时备份数据库文件
文件 说明 /etc/crontab / /crontab配置文件 /etc/cron.deny / /该文件中所列用户不允许使用crontab命令 /var/spool/cron/ * // 所有用户定时文件都存放此目录,文件以用户名命名 /var/log/cron / /定时任务执行后的日志文件,可用来回溯
crond任务管理
参数 含义 指定示例
-r 删除crontab文件内容 crontab -r
-u 管理其他用户的计划任务 crontab -u wangqing -l
注意: crontab {-l -e}实际上就是在操作/var/spool/cron/username
//如何进行计划任务的备份?
crond时间含义
crond编写示例
crond书写规范
//1.为计划任务增加必要的注释
##time sync
建议: 将需要定期执行的任务写入脚本中, 建立/scripts目录统一存放脚本, 脚本中命令必须使用绝对路径,手动执行脚本检测输出是否正常, 然后将脚本加入计划任务测试, 测试后无问题将脚本输出写入对应的日志文件中即可.
计划任务添加步骤:
作业:
说明以上答案每一行是什么含义
常用选项:
-l 查看作业队列,相当于atq
-f 从某个指定文件文件中读取作业任务,不通过交互式输入.
-d 删除指定的作业任务,相当于atrm.
-c 查看指定作业具体内容.
-q QUEUE指明队列.
TIME时间格式有:
HH:MM[am|pm] ◆ number [minutes|hours|days|weeks]在某个时间点再加几个时间后执行
at cd /tmp
at ls
at EOT
注意:输入结束后按ctrl◆d,任务输入结束at EOT,执行结果屏幕不会显示,会以邮件形式发送到邮箱.要是没有mail命令,进行yum -y install mailx安装.
执行周期性任务要确保crond守护进程在运行.
执行pstree,要是crond运行起来可以看到.
Active: active (running) ... ...
... is running
有时候为了安全起见,可以将不允许某些用户执行周期性任务的用户名添加到/etc/cron.deny文件里面即可.
cron任务分类:分系统cron任务和用户cron任务
总结:1.cron周期任务最小时间单位是分钟.
cron循环任务设定后,要是服务器因意外关机,那么在停机期间,cron设定的循环任务是不会运行的,当服务器开机后,也不会执行过去到达时间点的循环任务,只能等待下个时间点到来才执行.要想重新执行,anacron就可以解决这个问题.
anacron 是一个程序不是一个服务,当centos进入crontab排程时,anacron 会主动每一小时运行一次.
对于系统管理员而言,做系统备份是一个系统管理员非常重要的工作,但是每天重复的工作是一件非常繁琐的工作,那有没有一种方法可以让系统每天每到固定的时间都自己做备份工作呢?答案是有的,那就是计划任务,现在我们就来说说计划任务是怎么一回事,以及怎么去实现它
一般来说计划任务分两种一次性计划任务和周期性计划任务
①., 一次性计划任务:顾名思义一次性计划任务就是在某一个时间点只执行一次的任务,例如像,下周一有约会需要提醒这样只执行一次的任务,
命令at ,batsh实现一次性计划任务
At的用法:at time
执行的结果如下
At 命令的时间格式非常灵活我们可以使用
At now◆1min
At date 等今天这一节不再赘述
Batsh 命令是指在系统空闲时执行的一次性计划任务,比如你有一件不太重要的任务需要执行,当重要的任务执行完才会执行
Batsh 的用法
Batsh 回车 然后输入你要执行的任务
(1) 加载cron 模块crond:crond是一种服务一般情况下crond是默认加载的但是也不排除有特出情况
Modprobe crond
start 启动crond
status查看crond的运行状态
stop 停止crond服务
restart 重启crond服务
系统crond 是系统运行所需要的crond服务 /etc/crontab
用户crond使用户定义的crond服务/var/spool/cron/USERNAME
共六段 第一段min 指分钟,第二段hour指小时,第三段day指天,第四段mouth指月份,第五段week指周,第六段command指你要执行的命令例如
在字段中的*指在指定的时间域上所有的时间
—对应时间域上的连续取值时间 如1-10 1到10
,表示对应时间域上离散的时间取值如 1,10指的是1和10
/表示在对应时间域上每隔多久进行一次取值
保存并退出 一个计划任务就做好了
我们来看看怎么定义在每天晚上的凌晨把系统备份
管理员还可以为其他用户定制计划任务 使用 crontab –u username
Crontab –l 可以查看已经定义的计划任务
Crontab –r 移除已将定义的计划任务
Anacron的命令格式 day min 说明信息 run-parts /etc/cron.daiy
Day 指过去多长时间没有执行过命令 min 指启动后多长时间执行