zoukankan      html  css  js  c++  java
  • linux系统级别的计划任务及其扩展anacrontab

    这个是系统设置好了,清理系统垃圾或者是自动执行某些脚本的系统任务,一般我们做了解就行了,不要更改配置文件是/etc/conrtab

    SHELL:就是运行计划任务的解释器,默认是bash

    PATH:执行命令的环境变量

    MAILTO:计划任务的出发者用户

    HOME:家目录为/

    run-parts是一个脚本,在/usr/bin/run-parts,作用是执行一个目录下的所有脚本/程序。

    run-parts /etc/cron.hourly执行目录/etc/cron.hourly/之下的所有脚本/程序.

    run-parts下面就是运行的命令

    vim /etc/crontab 与crontab -e写入的定时运行的区别?

    vim /etc/crontab:是系统级别定义的crontab,/etc/crontab的所有者和组都是root

    crontab -e :是用户自定义的crontab,是所有的用户都可以写入的

    两种方法记录的位置不一样,一个在/etc/ 另一个在/var/ 里面。都被cron服务调用

    如果系统在以上说的时间没有开机怎么办?那么这个脚本不就是不能执行了?设计者早就想到了这个问题,所以就有了cron服务的扩展,目的就是为了防止非24小时开机的计算机遗漏的守护任务,anacrontab就是系统计划任务的扩展文件:在一个指定时间间隔错过后自动执行任务

    格式是这样的:

    period  delay  job-identifier  command

    period — 命令执行的频率(天数)

    delay — 延迟时间(分钟)

    job-identifier — 任务的描述,用在 anacron 的消息中,并作为作业时间戳文件的名称,只能包括非空白的字符(除斜线外)。

    command — 要执行的命令

    第一行的意思是:每天开机65分钟后就检查cron.daily文件是否被执行了,如果今天没有被执行就执行他

    第二行的意思是:每隔7天开机后70分钟检查cron.weekly文件是否被执行了,如果一周内没有被执行就执行他

    第三行的意思也差不多

    下面说说关于cron服务的控制,和at差不多,就是/etc/cron.deny这个配置文件来控制,里面写入要禁止使用cron用户的名字,一行一个就OK了

  • 相关阅读:
    分布式锁的三种实现方式
    sharding-jdbc
    MySQL Proxy 实现 MySQL 读写分离提高并发负载
    python 使用流式游标 读取mysql怎么不会内存溢出
    数据仓库方案
    MySQL percona-toolkit工具详解
    percona-toolkit 主从工具 master-slave
    MySQL sql join 算发
    MySQL5.7.6 general tablespace
    MySQL Data Directory -- Creating file-per-table tablespaces outside the data directory
  • 原文地址:https://www.cnblogs.com/fanweisheng/p/11109425.html
Copyright © 2011-2022 走看看