生产环境下的服务器的Crontab写法(生产环境下服务器开防火墙么)

admin3年前云主机84

生产环境下的服务器的Crontab写法

虽然关于 Crontab 的介绍到处都是,详细读了一遍这个词条,收获还是有的。Crontab 这个名字来自 “chronos”,一个古希腊语, “时间”的意思。

常见陷阱

每个System Admin或者是普通的 Unix 用户,在第一次使用 Crontab 的时候都会遇到问题. 运行 Crontab 的常见错误包括如下几种:1) 出于测试目的新创建了一条 Cron JOB, 时间间隔必须超过两分钟,否则 JOB 将调度不到。如果必须忽略这两分钟的载入配置时间差,可以通过重新启动 Cron Daemon 做到。

2) 从 Crontab 中启动 X Window 程序需要注意的事项:所以要么在程序前初始化 “DISPLAY=:0.0″, 要么在应用程序后面追加参数 –display :0.0

3) 命令中的 % 必须做转义处理: \% .我个人的意见是不要在命令行里带这个参数,干脆写到脚本里,然后调度该脚本即可。

其实我倒是认为使用 Crontab 最常见的一个问题往往是因为环境变量不对。经常会看到论坛里有人问:为什么我的 Crontab 创建了不执行? 准备创建一条 Cron JOB 的时候,很多人都喜欢在命令行下运行一遍,因为这个时候环境变量是随着 Shell 自动带进来,在 Crontab 中则可能因为找不到正确的环境变量,JOB 就不能执行。这个小问题就像出天花,一次教训之后就都记得了。
必须使用的一则技巧

每条 JOB 执行完毕之后,系统会自动将输出发送邮件给当前系统用户。日积月累,非常的多,甚至会撑爆整个系统。所以每条 JOB 命令后面进行重定向处理是非常必要的: >>/dev/null 2>&1。前提是对 Job 中的命令需要正常输出已经作了一定的处理, 比如追加到某个特定日志文件。附: Crontab 的格式说明如下:

* 逗号(’,') 指定列表值。如: “1,3,4,7,8″
* 中横线(’-') 指定范围值 如 “1-6″, 代表 “1,2,3,4,5,6″
* 星号 (’*') 代表所有可能的值

Linux(开源系统似乎都可以)下还有个 “/” 可以用. 在 Minute 字段上,*/15 表示每 15 分钟执行一次. 而这个特性在商业 Unix ,比如 AIX 上就没有.

## Use the hash sign to prefix a comment
# +---------------- minute (0 - 59)
# | +------------- hour (0 - 23)
# | | +---------- day of month (1 - 31)
# | | | +------- month (1 - 12)
# | | | | +---- day of week (0 - 7) (Sunday=0 or 7)
# | | | | |
# * * * * * command to be executed推荐记忆为分 时 日 月 星期


cron来源于希腊单词chronos(意为“时间”),是linux系统下一个自动执行指定任务的程序。例如,你想在每晚睡觉期间创建某些文件或文件夹的备份,就可以用cron来自动执行。

服务的启动和停止
cron服务是linux的内置服务,但它不会开机自动启动。可以用以下命令启动和停止服务:

/sbin/service crond start
/sbin/service crond stop
/sbin/service crond restart
/sbin/service crond reload
以上1-4行分别为启动、停止、重启服务和重新加载配置。

要把cron设为在开机的时候自动启动,在 /etc/rc.d/rc.local 脚本中加入 /sbin/service crond start 即可。

查看、编辑和删除
cron把命令行保存在crontab(cron table)文件里,这个文件通常在 /etc 目录下。每个系统用户都可以有自己的crontab(在 /var/spool/cron/ 下)。要查看当前用户的crontab,输入 crontab -l;要编辑crontab,输入 crontab -e;要删除crontab,输入 crontab -r。如当前是root身份,要查看/编辑/删除/某用户的crontab,只需在相应的命令后加上 -u USERNAME(如 crontab -e -u USERNAME)即可。crontab文件的默认编辑器是vi,可以输入 export VISUAL='editor' 更改默认编辑器。

cron服务每分钟不仅要读一次 /var/spool/cron 目录内的所有文件,还需要读一次 /etc/crontab 文件。配置这个文件也能让cron执行任务。使用crontab命令是对用户级任务的配置,而编辑 /etc/crontab 文件是对系统级任务的配置。

语法说明
以下是两个cron语句的例子(在 /etc/crontab 文件里)。前者用来晚间备份 /etc 目录,后者运行Analog程序处理服务器的统计信息。

12 3 * * * root tar czf /usr/local/backups/daily/etc.tar.gz /etc >> /dev/null 2>&1
52 5 * * * root /usr/local/src/analog-5.32-lh/analog >> /dev/null 2>&1
以下是cron语句中的字段与字段说明:

字段 说明
1 分钟(0-59)
2 小时(2-24)
3 日期(1-31)
4 月份(1-12;或英文缩写Jan、Feb等)
5 周几(0-6,0为周日;或单词缩写Sun、Mon等)
6 用户名(执行命令时以此用户的身份)
7 要执行的命令(路径)

《生产环境下的服务器的Crontab写法(生产环境下服务器开防火墙么)》来自互联网同行内容,若有侵权,请联系我们删除!

免责声明:本文内容来自用户上传并发布,站点仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。请核实广告和内容真实性,谨慎使用。

相关文章

如何验证香港服务器的本地IP?

想要验证香港服务器的本地IP地址,需要从多个方面考虑,比如通过Ping命令、使用WHOIS工具、访问IP地址查询网站等等。本文将从如下四个方面进行详细阐述:Ping命令的使用、WHOIS工具的使用、I...

移动硬盘加密软件有哪些

什么是移动硬盘加密软件移动硬盘加密软件是一种可以将移动硬盘上的内容进行加密保护的软件。它的作用是保护用户的隐私,防止数据泄露和丢失。通过加密,用户的数据可以被保存在移动硬盘上,即使移动硬盘被丢失或者被...

onevps

使用OneVPS获得更好的网络体验什么是OneVPS?OneVPS是一家提供云服务器租赁服务的公司,它提供了稳定的虚拟私有服务器、完善的技术支持和可靠的网络环境。通过OneVPS,你可以轻松获得更好的...

美国服务器租赁注意事项?

美国服务器租赁注意事项?美国服务器租赁是许多企业和个人用于托管网站、应用程序和数据的常见选择。以下是一些租赁美国服务器时需要注意的事项:数据隐私与安全:租赁美国服务器时,确保选择可靠的服务提供商,并考...

vps海外服务器租用有哪些缺点(VPS海外服务器租用的缺陷大曝光!)

一、安全性低由于国外服务器不受中国的网络安全法律的保护,所以国外的vps服务器的安全性往往不如国内的服务器。由于不受中国的网络监管部门监管,很多不良信息都存在于该服务器上,如黄赌毒网站、病毒程序等。而...

广东省采购云平台:优化采购流程,提升效率的必备工具

广东省采购云平台是一种优化采购流程,提高效率的必备工具。该平台在省级行政机关、市级行政机关、区县级行政机关以及其他组织之间进行采购信息的交流和采购过程中的合作。本文将从四个方面阐述广东省采购云平台的重...