乱读天书, 不求甚解
周祎骏的个人云笔记
Toggle navigation
乱读天书, 不求甚解
主页
Linux:系统配置
Linux:用户管理
Linux:优化排错
Linux:进程调度
Linux:文件系统
Linux:网络
Linux:系统服务
Linux:安全
Linux:内核
容器:Docker
容器:containerd
容器编排:Kubernetes
IAC:Terraform
大数据:Hadoop
大数据:Zookeeper
大数据:Hbase
消息队列:rsyslog
消息队列:kafka
数据库:MySQL
数据库:MongoDB
搜索引擎:Elasticsearch
时序数据库:OpenTSDB
网站服务:Nginx
编程:Bash
编程:Perl
编程:Python
编程:C
编程:JAVA
编程:Rust
版本控制:gitlab
知识管理:docusaurus
常用小工具
关于我
标签
Linux服务 1.02 crond
2017-03-02 13:46:31
63
0
0
admin
> 该服务用于配置计划任务 #配置计划任务 ##大致介绍 系统级的cronjob 配置在/etc/crontab 文件 其格式为(配置方式中细说) ``` # * * * * * user-name command to be executed ``` /etc/cron.d/下的文件同样属于系统配置 *** 用户级的配置在 /var/spool/cron/$username 其格式为(配置方式中细说) ``` # * * * * * command to be executed ``` **注:** crontab 默认的环境变量与~/.bashrc中不同,可以配置在每个文件的前几行 ``` [root@hadoop1 ~]# cat /etc/crontab SHELL=/bin/bash PATH=/sbin:/bin:/usr/sbin:/usr/bin MAILTO=root HOME=/ ``` 如果需要特定的环境变量,请编辑对应文件或者在脚本中source ~/.bashrc *** ##配置方式 **crontab -e** 然后编辑 **crontab config_file** 配置在config_file 中 **crontab -r** 清空自己的cronjob配置 **在没有tty的情况下, crontab 不加参数也会清空cronjob(比如ssh hostname crontab)。** **crontab -r -u XXX** 清空用户XXX的cronjob 配置,只能root 跑。 **crontab -l** 显示当前cronjob 配置。 **写脚本时候注意:如果用户没有配置过cronjob,这个命令会以1退出;如果用户配置过cronjob,之后清空,这个命令不会以1退出** ``` # .---------------- 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 *:代表所有值,比如minute 那一列写* 就是每分钟跑一次 ,:用来分隔一个列表,比如hour 那一列写1,2,3 就是1点,2点,3点各跑一次 -:表示一个范围,比如hour 那一列写5-7,就是5点6点7点 /:表示间隔,比如hour 那一列 */2 表示每2小时跑一次。 ``` **在命令中 % 表示换行,%后的内容会作为标准输入传递给 % 之前的命令,如果要使用 % 记得转义(%%)** *** ##配置权限 如果/etc/cron.allow 文件存在,那么只有在文件中列出的用户可以使用crontab,其他人不可以。 如果/etc/cron.allow 不存在且/etc/cron.deny 存在,那么只有列在这个文件中的用户不能使用crontab、 *** #其他 ##日志 /var/log/cron ##一些其他的定时任务 一般在/etc/cron.d 中会配置每小时,每天,每月,每星期去跑下列目录下面的脚本: cron.daily/,cron.hourly/,cron.monthly/,cron.weekly/ 是通过run-parts 命令去调用的。 ``` [root@hadoop1 ~]# cat /etc/cron.d/0hourly SHELL=/bin/bash PATH=/sbin:/bin:/usr/sbin:/usr/bin MAILTO=root HOME=/ 01 * * * * root run-parts /etc/cron.hourly #每小时跑/etc/cron.hourly里的脚本 ```
上一篇:
Linux服务 1.011 用ssh作为代理
下一篇:
Linux服务 1.03 rsyslog (作为系统日志服务)
文档导航