cron服务——Linux计划任务管理
前言
这是我听老师讲课做的笔记,考试要看的。 这是视频地址
作者:RodmaChen
关注我的csdn博客,更多Linux笔记知识还在更新
一.cron服务介绍
- cron是一个可以用来根据时间、日期、月份、星期的组合来调度对周期性任务执行的守护进程。
- 利用cron所提供的功能,可以将需要周期性重复执行的任务设置为cron任务,并且设置为在主机较空闲的时间(如夜间)自动完成
二.管理cron服务
更多服务管理命令和解释可以看我这篇文章 : Linux系统下服务和运行目标管理
| 指令 | 任务 | 
|---|---|
| # systemctl status crond.service | 查询crond服务状态 | 
| # systemctl stop crond.service | 停止crond服务 | 
| # systemctl start crond.service | 启动crond服务 | 
| # systemctl restart crond.service | 重新启动crond服务 | 
| # systemctl list-units -t service |grep "crond" | 查看crond服务的开机启动状态 | 
三. 配置cron服务
- cron服务的配置主要使用crontab命令。cron服务在配置的时候是基于当前用户的,不同的用户cron任务的存储文件也不同。
| 指令 | 功能 | 
|---|---|
| # crontab -l | 查看用户的cron任务 | 
| # crontab -e | 调用文本编辑器对cron任务进行编辑 | 
| # crontab -u user名称 - e | 编辑用户的cron任务 | 
| # crontab -r | 删除用户现有的cron任务 | 

-  关于时间配置的介绍: 
  
  
-  时间的设置上还有一些特殊的符号能够起到灵活的效果 
*:代表所有的取值范围内的数字
"/":代表每的意思,"*/5"表示每5个单位
"-":代表从某个数字到某个数字
",":分开几个离散的数字
- 举例:
 (1)我们可以使用vi命令进入test.text文本中编辑,直接输入日期和指令就行。
 (2)也可以使用以下方法
- 每两个小时输出“have a break now”到test.txt文本中
0 */2 * * * echo "Have a break now." >> /tmp/test.txt
- 晚上11点,早上八点 输出“have a good dream :)”到命令行终端上
0 23,8 * * * echo "Have a good dream:)" >> /dev/tty1
- 每个月的4号和每个礼拜的礼拜一到礼拜三的早上11点执行某段命令
0 11 4 * 1-3 command line
- 保存cron任务的文件: 所有用户的cron任务(使用crontab命令创建的任务)都被保存在目录“/var/spool/cron/”中的文件中,文件的名称与用户名相同。
 例如:root用户的cron任务列表文件的名称“/var/spool/cron/root”

四. cron服务的配置文件和目录
-  系统任务配置文件 
 “/etc/crontab”文件中设置的是Linux系统维护所需的任务,一般不需要人为去修改
-  任务脚本目录 
 在“/etc”目录中有名为cron.hourly 、cron.daily 、cron.weekly 和cron.monthly的目录,目录中存放的是需要定期执行的系统任务脚本
 例如:“/etc/cron.daily/”目录中存放的是每日执行一次的系统任务脚本

五. 实训任务
- 请在每天早上3点钟进行重启httpd服务的工作
- 每周六、周日的1 : 10重启机器
- 每晚的21:30输出提示“have a break”

 这里我们直接输入命令,然后他会在/var/spool/cron/文件夹里添加一个root文件,然后进入编辑状态,你也可以使用crontab -u 文件名 -e 自己设置文件名。
 
进入输入模式,将三个问题输入。
 注意一:在censor中直接使用service是无效的,需要加绝对路径
 注意二:重启机器reboot命令也需要加绝对路径才能生效(我测试时候是这样的,可是我老师就不用)
 注意三:tty1是命令行终端,可以用who命令查看
 
 然后退出输入模式:wq保存退出就行了
 
更多Linux学习可以看以下链接:
转载说明:跟我说明,务必注明来源,附带本人博客连接。
请给我点个赞鼓励我吧
 
- 点赞
- 收藏
- 关注作者
 
            

 
           
评论(0)