linux缺省会启动crond进程,crond进程不需要用户启动、关闭。 
需要启动/关闭cron
/sbin/service crond start   --启动服务
/sbin/service crond stop --关闭服务
/sbin/service crond restart --重启服务
/sbin/service crond reload --重新载入配置
crond进程负责读取调度任务并执行,用户只需要将相应的调度脚本写入cron的调度配置文件中。 
cron的调度文件
有以下几个:
crontab
cron.d
cron.daily
cron.hourly
cron.monthly
cron.weekly
如果用的任务不是以hourly monthly weekly方式执行,则可以将相应的crontab写入到crontab 或cron.d目录中。
 
存放文件 
/etc/cron.deny 文件列出所有不允许使用 crontab命令的用户
/etc/cron.allow 文件所列的用户允许使用crontab命令
/var/spool/cron 所有用户的crontab文件
/var/spool/cron/crontabs
 
1、直接用crontab 命令编辑
cron服务提供 crontab 命令来设定cron
命令格式为:crontab -l|-r|-e|-u [username]
参数含义:
crontab -l 列出某个用户的cron服务内容
crontab -e 编辑某个用户的cron 的内容
crontab -r 移除某个用户的cron的所有内容
crontab -u 设定某用户的cron服务
命令如:
root 查看自身的cron设置:crontab -u root -l
删除用户test的cron设置:crontab -u test -r
 
内容格式:* * * * *命令前面的五个*号,表示分,时,日,月,周
如:代表意义   分钟   小时   日期   月份   周
        数字范围   0-59  0-23    1-31  1-12  0-7
 
例如:#crontab -e59 23 1 5 * mail linuxing < /home/test.txt
每在5月1日,23点59分就把/home/test.txt的内容作为邮件发给linuxing用户

*/ * * * * /opt/test.sh    每5分钟就执行一次/opt/test.sh脚本
, * * * /usr/local/bin/test.sh 每在3点和6点整点都执行/usr/local/bin/test.sh命令
- * * * /root/backup.sh 点到 点之间的每小时的0分都执行/root/backup.sh
*/ * * * echo "Have a break now." >> /tmp/test.txt 每两个小时
-/, * * * echo "Have a good dream:)" >> /tmp/test.txt 晚上11点到早上8点之间每两个小时,早上八点
* - command line 每个月的4号和每个礼拜的礼拜一到礼拜三的早上11点
* command line 1月1日早上4点
* * * find /home/mysql/databack/* -mtime 30 -print|xargs rm -rf 定时清除 数据库备份

2、编辑/etc/crontab 文件配置cron

 cron服务每分钟不仅要读一次/var/spool/cron内的所有文件,还需要读一次/etc/crontab,因此我们配置这个文件也能运用cron服务做一些事情。用crontab配置是针对某个用户的,而编辑/etc/crontab是针对系统的任务。

此文件的文件格式是:

  SHELL=/bin/bash
  PATH=/sbin:/bin:/usr/sbin:/usr/bin
  MAILTO=root //如果出现错误,或者有数据输出,数据作为邮件发给这个帐号
  HOME=/ //使用者运行的路径,这里是根目录
  # run-parts
   * * * * root run-parts /etc/cron.hourly //每小时执行/etc/cron.hourly内的脚本
   * * * root run-parts /etc/cron.daily //每天执行/etc/cron.daily内的脚本
   * * root run-parts /etc/cron.weekly //每星期执行/etc/cron.weekly内的脚本
   * * root run-parts /etc/cron.monthly //每月去执行/etc/cron.monthly内的脚本

  大家注意"run-parts"这个参数了,如果去掉这个参数的话,后面就可以写要运行的某个脚本名,而不是文件夹名了。

典型例子:

定时备份mysql 数据库

1、crontab -e

2、01 3 * * * /home/backmysql

3、vim /home/backmysql

#!/bin/sh

rq=`date +%Y%m%d`

mysqldump -uroot -p123456 teatop_db --skip-lock-tables >/mysqldata/databack/mysql$rq.sql

4、/sbin/service crond restart

 

定时备份redis

1、crontab -e

2、01 3 * * * /home/redis.sh

3、vim /home/redis.sh

#!/bin/sh

rq=`date +%Y%m%d`

mkdir /mysqldata/redis/redis$rq

cp -R /usr/redisdata/* /mysqldata/redis/redis$rq

4、service crond restart

 

Linux 作业调度器 crond的更多相关文章

  1. Hadoop作业调度器

    随着 MapReduce 的流行,其开源实现 Hadoop 也变得越来越受推崇.在 Hadoop 系统中,有一个组件非常重要,那就是调度器.调度器是一个可插拔的模块,用户可以根据自己的实际应用要求设计 ...

  2. Linux 调度器模拟

    http://www.ibm.com/developerworks/cn/linux/l-linux-scheduler-simulator/ LinSched LinSched 是驻留在用户空间中的 ...

  3. Linux之定时任务Crond使用

    Linux之定时任务Crond使用 一.用法 crond服务是linux系统自带的服务,是不需要手动安装的: crond服务是一种守护进程: Linux中的用户使用contab命令来配置corn任务: ...

  4. Linux进程调度器的设计--Linux进程的管理与调度(十七)

    1 前景回顾 1.1 进程调度 内存中保存了对每个进程的唯一描述, 并通过若干结构与其他进程连接起来. 调度器面对的情形就是这样, 其任务是在程序之间共享CPU时间, 创造并行执行的错觉, 该任务分为 ...

  5. Linux进程调度器概述--Linux进程的管理与调度(十五)

    调度器面对的情形就是这样, 其任务是在程序之间共享CPU时间, 创造并行执行的错觉, 该任务分为两个不同的部分, 其中一个涉及调度策略, 另外一个涉及上下文切换. 1 背景知识 1.1 什么是调度器 ...

  6. linux调度器源码分析 - 运行(四)

    本文为原创,转载请注明:http://www.cnblogs.com/tolimit/ 引言 之前的文章已经将调度器的数据结构.初始化.加入进程都进行了分析,这篇文章将主要说明调度器是如何在程序稳定运 ...

  7. linux调度器源码分析 - 初始化(二)

    本文为原创,转载请注明:http://www.cnblogs.com/tolimit/ 引言 上期文章linux调度器源码分析 - 概述(一)已经把调度器相关的数据结构介绍了一遍,本篇着重通过代码说明 ...

  8. Linux调度器 - 用户空间接口

    一.前言 Linux调度器神秘而充满诱惑,每个Linux工程师都想深入其内部一探究竟.不过中国有一句古话叫做“相由心生”,一个模块精巧的内部逻辑(也就是所谓的“心”)其外延就是简洁而优雅的接口(我称之 ...

  9. Linux 调度器发展简述

    引言 进程调度是操作系统的核心功能.调度器只是是调度过程中的一部分,进程调度是非常复杂的过程,需要多个系统协同工作完成.本文所关注的仅为调度器,它的主要工作是在所有 RUNNING 进程中选择最合适的 ...

随机推荐

  1. 亿级PV请求的三种负载均衡技术(转)

    http://www.360doc.com/content/17/1126/23/50145453_707419125.shtml       目录 DNS轮询 LVS负载均衡 DR模式 NAT模式 ...

  2. Python数组(一)

    一.索引 数组中的索引(下标)是从0开始递增的,你可以像下面这样使用编号来访问各个元素: test=['java','C#','C++','html','Spring'] print(test[0]) ...

  3. angularJs实现修改功能

    思路: 对表单中内容进行修改,首先需要获取这个内容,再进行修改,再清空弹窗中的内容 //查询实体 $scope.findOne=function(id){ $http.get('../brand/fi ...

  4. 4. mybatis 的排序

    order by(排序) 的用法 根据哪一个列进行排序   配置文件 mapper.xml 如果是一个列的话就用${value} <select id="selectBlogOrder ...

  5. 【Cracking the Code Interview(5th edition)】一、数组与字符串(C++)

    1.1 实现一个算法,确定一个字符串的所有字符是否全都不同.不允许使用额外的数据结构. 解答:这里假定字符集为ASCII码,可以与面试官沟通确认字符串使用的字符集.由于字符集是有限的,建立一个数组模拟 ...

  6. POJ1063 Flip and Shift

    题目来源:http://poj.org/problem?id=1063 题目大意: 有一种游戏如图所示.一个填满黑白球的转盘,它可以有两种操作,一种是将大转盘顺时针旋转,所有球的位置顺时针挪一位,另一 ...

  7. java 调用本地应用程序 Java打开(.word,.txt,.pdf)文件

    https://blog.csdn.net/lebron3v/article/details/80741000

  8. 06-图2 Saving James Bond - Easy Version (25 分)

    This time let us consider the situation in the movie "Live and Let Die" in which James Bon ...

  9. PHP常用设计模式汇总

    装饰模式: <?php abstract class Tile { abstract function getWealthFactor(); } class Plains extends Til ...

  10. Lucene.Net和盘古分词应用

    Lucene.Net.dll:用做全文索引 PanGu.dll(盘古分词):作为中文分词的条件 大致原理: 1.Lucene先根据PanGu将需要搜索的内容分隔.分词,然后根据分词的结果,做一个索引页 ...