12 Linux下crontab详解

1. 概述:

crond是linux下用来周期性的执行某种任务或等待处理某些事件的一个守护进程,与windows下的计划任务类似,当安装完成操作系统后,默认会安装此服务工具,并且会自动启动crond进程,crond进程每分钟会定期检查是否有要执行的任务,如果有要执行的任务,则自动执行该任务。

2. 任务调度的分类:

  • 系统任务调度:系统周期性所要执行的工作,比如写缓存数据到硬盘、日志清理等。在/etc目录下有一个crontab文件,这个就是系统任务调度的配置文件。

          

          前四行是用来配置crond任务运行的环境变量

          第一行 SHELL变量指定了系统要使用哪个shell,这里是bash

          第二行 PATH变量指定了系统执行命令的路径

          第三行 MAILTO变量指定了crond的任务执行信息将通过电子邮件发送给root用户,如果MAILTO变量的值为空,则表示不发送任务执行信息给用户

          第四行 HOME变量指定了在执行命令或者脚本时使用的主目录。

         第六至九行表示的含义将在下个小节详细讲述。这里不在多说。

  • 用户任务调度:用户定期要执行的工作,比如用户数据备份、定时邮件提醒等。用户可以使用 crontab 工具来定制自己的计划任务。所有用户定义的crontab 文件都被保存在 /var/spool/cron目录中。其文件名与用户名一致。

 

3. crond 服务

  • 安装crontab:

           # yum install crontabs

  • 服务操作说明:

          #/sbin/service crond start //启动服务

          #/sbin/service crond stop //关闭服务

          #/sbin/service crond restart //重启服务

          #/sbin/service crond reload //重新载入配置

  • 查看crontab服务状态:

           #service crond status

  • 手动启动crontab服务:

           #service crond start

  • 查看crontab服务是否已设置为开机启动,执行命令:

           #ntsysv

           加入开机自动启动:

          #chkconfig –level 35 crond on

  • 终止任务调度

          #crontab -r

  • 列出当前任务调度

          #crontab –l

4. Crontab使用说明

    

5. 设置用户任务调度

       #crontab –e

       #输入 * * * * * ls –l /etc/ > /tmp/to.txt

       

       

        注:*代表每分钟,每小时,每天,每月等

       

6. 设置crontab的另一种方法   

        先创建shell文件,然后在crontab中设置执行该shell文件

  • #vi /tmp/mytask.sh

         

  • 更改mytask.sh文件的权限类型(可读可写可执行)

          #chmod 744 mytask.sh

        

  • #crontab –e

           追加输入* * * * * /tmp/mytask.sh

        

  • 这里我们可以看到通过crontab创建的to1.txt文件

          

          

  • 查看当前任务调度

       

时间: 2024-10-29 19:10:10

12 Linux下crontab详解的相关文章

Linux下crontab详解

概述 任务调度:是指系统在某个时间执行的特定的命令或程序 任务调度分类: - 系统工作:有些重要的工作必须周而复始地执行,如病毒扫描等 - 个别用户工作:个别用户可能希望执行某些程序 任务调度命令 设置任务调度文件:/etc/crontab 设置个人任务调度,执行crontab ‐e命令,接着输入任务到调度文件 [案例]5 * * * * ls ‐l /etc/ > /tmp/to.txt,意思说每小时的第五分钟执行ls命令 调度文件的规则 字段名称 说明 范围 分钟 每小时中的第几分钟执行 0

Linux定时任务Crontab详解

原文地址:http://edu.codepub.com/2011/0104/28518.php 今天做了个数据库的备份脚本,顺便系统得学习一下Linux下定时执行脚本的设置.Linux下的定时执行主要是使用crontab文件中加入定制计划来执行,设置比Windows稍微复杂一些(因为没有图形界面嘛),但是也不是非常复杂,基本上用过一遍就能记住了,关键是要记住/var/spool/cron这个目录.下面看一下具体的用法: 首先查看一下/etc/crontab文件: $ cat /etc/cront

[转]Linux定时任务Crontab详解

转自:http://blog.chinaunix.net/uid-7552018-id-182133.html 今天做了个数据库的备份脚本,顺便系统得学习一下Linux下定时执行脚本的设置.Linux下的定时执行主要是使用crontab文件中加入定制计划来执行,设置比Windows稍微复杂一些(因为没有图形界面嘛),但是也不是非常复杂,基本上用过一遍就能记住了,关键是要记住/var/spool/cron这个目录.下面看一下具体的用法: 首先查看一下/etc/crontab文件: $ cat /e

Linux定时任务Crontab详解_定时备份

文章来源:http://blog.chinaunix.net/uid-7552018-id-182133.html 今天做了个数据库的备份脚本,顺便系统得学习一下Linux下定时执行脚本的设置.Linux下的定时执行主要是使用crontab文件中加入定制计划来执行,设置比Windows稍微复杂一些(因为没有图形界面嘛),但是也不是非常复杂,基本上用过一遍就能记住了,关键是要记住/var/spool/cron这个目录.下面看一下具体的用法: 首先查看一下/etc/crontab文件: $ cat

Linux下iptables详解

一.介绍 防火墙,其实说白了讲,就是用于实现Linux下访问控制的功能的,类似于网络设备中的ACL.它分为硬件的或者软件的防火墙两种.无论是在哪个网络中,防火墙工作的地方一定是在网络的边缘或网络出口.而我们的任务就是需要去定义到底防火墙如何工作,这就是防火墙的策略.规则,以达到让它对出入网络的IP.数据进行检测. 目前市面上比较常见的有3.4层的防火墙,叫网络层的防火墙,还有7层的防火墙,其实是代理层的网关. 对于TCP/IP的七层模型来讲,我们知道第三层是网络层,三层的防火墙会在这层对源地址和

Linux 中 crontab 详解及示例

cron是一个linux下的定时执行工具,可以在无需人工干预的情况下运行作业.由于Cron 是Linux的内置服务,但它不自动起来,可以用以下的方法启动.关闭这个服务: /sbin/service crond start //启动服务 /sbin/service crond stop //关闭服务 /sbin/service crond restart //重启服务 /sbin/service crond reload //重新载入配置 你也可以将这个服务在系统启动的时候自动启动: 在/etc/

Linux下task_struct详解

   背景:为了管理进程,操作系统必须对每个进程所做的事情进行清楚地描述,为此,操作系统使用数 据结构来代表处理不同的实体,这个数据结构就是通常所说的进程描述符或进程控制块.在linux系统中,这就是task_struct结构,在include\linux\sched.h文件中定义. 每个进程都会被分配一个task_struct结构,它包含了这个进程的所有信息,在任何时候操作系统都能跟踪这个结构的信息.这个结构是linux内核汇总最重要的数据结构,下面我们会详细的介绍. task_struct结

【未完】Linux下memcached详解

参考文档: 1.Linux下设置memcached访问IP http://blog.sina.com.cn/s/blog_484d87770101om9r.html 2.Memcached个人熟悉全过程 http://blog.csdn.net/why7282299/article/details/8970499 3.linux下memcached的启动/结束的方式 http://www.2cto.com/os/201203/125164.html

Linux下SElinux详解

1.SElinux 全称:Security-Enhanced Linux,灵活的强制访问控制(MAC)系统,且内嵌于Linux Kernel中,仅                    集合最小权限访问, 2. 查看文件上下文: ls -Z [[email protected] ~]# ls -Z -rw-------. root root system_u:object_r:admin_home_t:s0 anaconda-ks.cfg -rw-r--r--. root root system