原标题:RHCE培训视频Crontab详解(创想云教育)

RHCE8培训视频Crontab详解

Linux 定时任务服务 crond (crontab 服务)

附课堂笔记:

[root@servera ~]# systemctl status crond

● crond.service - Command Scheduler

Loaded: loaded (/usr/lib/systemd/system/crond.service; enabled; vendor preset: enable>

Active: active (running) since Sun 2020-11-22 09:12:19 CST; 5h 31min ago

Main PID: 739 (crond)

为什么需要定时任务服务crond 1 7*24 开机对外提供服务

重要数据:rsync tar

定时任务加 SHELL 脚本来实现自化备份

Linux 系统中定时任务分类:

1 系统自身的定时任务 7 段

2 用户执行的定时任务 6 段

Crontab 在固定时间间隔执行指定的脚本或命令

[root@servera ~]# vim /etc/crontab # Example of job definition:

# .---------------- minute (0 - 59) 分钟

# | .------------- hour (0 - 23) 小时

# | | .---------- day of month (1 - 31) 日

# | | | .------- month (1 - 12) OR jan,feb,mar,apr ... 月

# | | | |-------- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat 周

# | | | | |

# * * * * * user-name command to be executed [root@servera ~]# whatis crontab

crontab (1) - maintains crontab files for individual users

crontab (1p) - schedule periodic background work crontab (5) - files used to schedule the execution of programs

-u define user

-e edit user's crontab

-l list user's crontab

-r delete user's crontab

定时任务的格式:

用户执行的定时任务分为 6 段,每个段通过空格进行分隔

系统定时任务分为 7 段,空格进行分隔

30 22 * * * /scripts/memory.sh 前五段时间设定 第六段要执行的命令或者脚本

特殊符号:

* 号表示任意时间都

例如:小时使用*号等价于 0 – 23 分钟* 等价于 0 – 59

- 减号,表示分隔符,表示一个时间范围

30 12-16 * * * /scripts/memory.sh

,逗号,表示分隔时间段

30 12,16,19 * * * /scripts/memory.sh

/n n 代表数字,每隔 n 个单位时间 例如:每 10 分钟执行一次任务

*/10 * * * * 等价于 0 – 59/10 * * * *

30 3,12 * * * /scripts/memory.sh

30 21 * * * /scripts/memory.sh 45 4 1,10,22 /scripts/memory.sh 10 1 * * 6,0 /scripts/memory.sh

* 23,00-07/1 * * * /scripts/memory.sh 不规范写法

0 23,00-07/1 * * * /scripts/memory.sh

总结:

[root@servera ~]# crontab -u root -l 错误

* * * * * tar czvf /tmp/$(date +%F).etc.tar.gz /etc

crontab %号有特殊的作用,命令使用了%百分号,换行符Nov 22 02:01:01 jegui CROND[4783]: (root) CMD (tar czvf

/tmp/$(date +) date 格式化参数会被截掉,导致语法错误

[root@servera ~]# crontab -u root -l

* * * * * tar czvf /tmp/$(date +\%F).etc.tar.gz /etc

[root@servera scripts]# ll /tmp/20*

ls: cannot access '/tmp/20*': No such file or directory [root@servera scripts]# crontab -l -u root

* * * * * /scripts/backup.sh [root@servera scripts]# ll backup.sh

-rw-r--r--. 1 root root 55 Nov 22 15:08 backup.sh

[root@servera scripts]# crontab -l -u root

* * * * * /bin/sh /scripts/backup.sh

[root@servera scripts]# crontab -l

* * * * * /bin/sh /scripts/backup.sh &> /dev/null

[root@servera ~]# crontab -u root -l

* * * * * /bin/sh /scripts/backup.sh

[root@servera clientmqueue]# rm –rf * 如果文件太多,占用空间大, 删除非常非常慢 /bin/rm argument list too long 错误[root@servera clientmqueue]# ls |xargs rm –f

总结:

1、定时任务的命令或程序最好写到脚本里执行

2、执行shell 脚本任务前加/bin/bash 或 /bin/sh 注解: 脚本没有执行权限, 可以执行

3、定时任务命令或脚本结尾添加 &> /dev/null 字符设备文件

注意:定时执行的程序有输出或错误,输出内容会以邮件形式发送给 cron 用户,如果 sendmail 没有启动产生大量文件,消耗掉大量 inode,导致系统报错No space left on device

4、定时任务脚本路径写绝对路径

调试定时任务:

1 调整系统的时间 systemctl restart crond

通过 crontab 实现秒级定时任务[root@servera scripts]# cat demo.sh #!/bin/bash

step=1

for (( i=0; i<60; i=(i+step) ));do

$(date >> /mnt/file) sleep $step

done exit 0

实现定时任务秒级

[root@servera scripts]# cat backup.sh #!/bin/bash

while true;do

$(date >> /tmp/cloudshell) sleep 1

done

[root@servera ~]# at 19:30

warning: commands will be executed using /bin/sh at> yum update --security -y

at>

job 2 at Sun Nov 22 19:30:00 2020 [root@servera ~]# at -l

2 Sun Nov 22 19:30:00 2020 a root

错误: No space left on device df –TH 磁盘还有非常大的空间一个文件存储到文件系统中,至少要占用一个 inode 和一个 block

关于更多视频资料,请访问:

https://www.cloudshelledu.com/redhat返回搜狐,查看更多

责任编辑:

linux的crontab绝对路径咋填,RHCE培训视频Crontab详解(创想云教育)相关推荐

  1. Linux 创建网页服务,Linux使用Node.js建立访问静态网页的服务实例详解

    Linux使用Node.js建立访问静态网页的服务实例详解 一.安装node.js运行所需要的环境,: 二.创建node目录(/node/www),并在目录下创建node.js服务文件server.j ...

  2. linux修改zip中文件,Linux下修改jar、zip等文件内的文件详解

    Linux下修改jar.zip等文件内的文件详解 Linux下修改jar.zip等文件内的文件详解 看到很多同事在Linux环境下修改jar包内的文本文件或zip中的文本文件时,经常是先把jar包或z ...

  3. linux shell 字符串操作(长度,查找,替换)详解 BASH

    linux shell 字符串操作(长度,查找,替换)详解 在做shell批处理程序时候,经常会涉及到字符串相关操作.有很多命令语句,如:awk,sed都可以做字符串各种操作. 其实shell内置一系 ...

  4. linux系统编程之进程(八):守护进程详解及创建,daemon()使用

    linux系统编程之进程(八):守护进程详解及创建,daemon()使用 一,守护进程概述 Linux Daemon(守护进程)是运行在后台的一种特殊进程.它独立于控制终端并且周期性地执行某种任务或等 ...

  5. linux两台服务器传输,Linux两台服务器之间高速数据传输命令:scp应用详解

    Linux两台服务器之间高速数据传输命令:scp应用详解 Linux scp命令用于Linux之间复制文件和目录到另外一台,这个命令在多台服务器之间传输还是非常有用的,速度也是非常快的.比window ...

  6. Linux进程最大socket数,Linux下高并发socket最大连接数所受的各种限制(详解)

    1.修改用户进程可打开文件数限制 在Linux平台上,无论编写客户端程序还是服务端程序,在进行高并发TCP连接处理时,最高的并发数量都要受到系统对用户单一进程同时可打开文件数量的限制(这是因为系统为每 ...

  7. 19. linux中权限详解,Linux权限位,读写执行权限真正含义,chmod详解

    linux中权限详解,Linux权限位,读写执行权限真正含义,chmod详解 文章目录 Linux权限位 读写执行 三种权限真正含义和作用 权限对文件的作用 权限对目录的作用 示例 chmod 使用数 ...

  8. 【genius_platform软件平台开发】第五十二讲:Linux系统之V4L2视频驱动详解

    V4L2视频驱动详解 刚建的微信群欢迎加入一起学习.讨论: 1. 简介 1.1 视频输入输出设备(video capture device,video output device) 1.2 VBI设备 ...

  9. linux服务器3306端口,linux系统对外开放3306、8080等端口,防火墙设置详解

    linux系统对外开放3306.8080等端口,防火墙设置详解 发布时间:2020-10-10 23:08:49 来源:脚本之家 阅读:141 作者:julielele 栏目:服务器 我们很多时候在l ...

最新文章

  1. TorchVision中通过AlexNet网络进行图像分类
  2. codevs 1002 搭桥
  3. 1.26 Java使用自定义包
  4. 高精度加法(非负)和大数阶乘及和汽水问题
  5. C++类模板中的static成员
  6. TIA Portal
  7. 【RLchina第四讲】Model-Based Reinforcement Learning
  8. 高颜值:Redis官方可视化工具,功能强大!
  9. 写会议纪要也是需要水平滴
  10. java 订单支付_Java多订单多支付方式分配金额问题的解决
  11. 信息系统项目管理师必背核心考点(四十五)招标投标法
  12. FastQC安装以及试用
  13. mcldownload文件夹_我的世界存档在哪个文件夹及导入存档的方法介绍
  14. GEE——2018 年南非国家土地覆盖( 20 米分辨率多季节 Sentinel 2 卫星图像生成的)
  15. Hutool导出excel带前台Base64图片
  16. Java项目生成静态页面
  17. 小程序配置服务器域名
  18. gtx1070显卡 linux,Ubuntu 16.04下Nvidia 显卡驱动安装
  19. 弘辽科技:淘宝有哪些推广工具?有哪些店铺推广方法?
  20. 【Mac 教程系列第 16 篇】如何查看 Apple 产品的真伪

热门文章

  1. ubuntu16.04安装浏览器
  2. 计算机网络技术第二版毛吉魁,IDS联动系统的设计与实现
  3. go-cqhttp权限管理
  4. 【Linux】修改Xshell 7默认配色方案和会话属性
  5. Android优秀开源框架集
  6. BIT2022年春软件需求工程和UML建模 - 智慧校园数据管理系统 - Week_2to5
  7. c++实现医院检验科排班程序
  8. js调android方法失败,安卓开发学习之解决JS不能调用Android方法
  9. 关于word撤销功能无法使用的笔记
  10. 再见 Windows XP