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

admin3年前云主机83

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

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

相关文章

如何选择以上海服务器租用为中心的最佳选项?

随着数字化时代的到来,越来越多的企业选择了服务器租用作为存储和管理数据的解决方案。本篇文章将以上海服务器租用为中心,介绍如何选择最佳服务器租用选项,引出读者的兴趣,并提供背景信息。正文:一、性能和可靠...

学生云服务器选择

个人云服务器选择介绍随着互联网的不断发展,个人网站、博客、小程序等越来越常见,因此云服务器成为了很多人的选择。而在选择云服务器时,不同的人有不同的需求和喜好,下面介绍几种比较常见的云服务器。阿里云阿里...

导致服务器重启的硬件问题有哪些

导致服务器重启的硬件问题有哪些服务器是企业或组织的重要设备,负责存储和运行关键应用程序。然而,一些硬件问题可能会导致服务器重启,从而影响业务连续性。本文将介绍一些导致服务器重启的常见硬件问题。电源问题...

怎么维护香港服务器(香港服务器维护指南)

一、确保服务器安全服务器的安全性能对于任何在线业务都至关重要。在维护香港服务器时,首先要考虑的是网络安全,包括内部和外部的攻击。为了保护服务器的安全,管理员应该安装并定期更新防火墙和杀毒软件。此外,还...

云服务器带宽选择(云服务器带宽选择哪个)

找服务器给各位分享云服务器带宽选择知识,如有帮助,请关注我们!本文目录:1、云服务器哪家好?2、云服务器2M带宽算是大还是小,能支持多少人同时访问3、如何选择适合自己的云服务器云服务器哪家好?较好的有...

Zabbix3.0 使用SS代替netstat监控TCP状态(zabbix ssh)

对于Zabbix监控TCP状态,在网上查了很多资料,大多数都是使用netstat命令来实现。如果服务器的压力小,链接少,不会有问题,但随着服务器压力和链接数的增加,用netstat就会造成执行速度慢,...