ubuntu下启用crontab定时任务及简单测试

什么是crontab?介绍引用自百度百科。

crontab命令常见于Unix和类Unix的操作系统之中,用于设置周期性被执行的指令。该命令从标准输入设备读取指令,并将其存放于“crontab”文件中,以供之后读取和执行。该词来源于希腊语 chronos(χρνο),原意是时间。通常,crontab储存的指令被守护进程激活, crond常常在后台运行,每一分钟检查是否有预定的作业需要执行。这类作业一般称为cron jobs。

crontab可以用来实现linux下的定时任务,这里记录crontab在ubuntu上的配置使用以及简单测试。

1.开启日志服务器rsyslog对crontab的支持

打开终端,输入:

cd /etc/rsyslog.d/
ls

列出了两个文件:

20-ufw.conf  50-default.conf

我们要对50-default.conf这个文件进行修改:

vim 50-default.conf

在vim中找到 cron.* 所在行,取消该行的注释,如下第10行:

#  Default rules for rsyslog.
#
#            For more information see rsyslog.conf(5) and /etc/rsyslog.conf
#
# First some standard log files.  Log by facility.
#
auth,authpriv.*            /var/log/auth.log
*.*;auth,authpriv.none        -/var/log/syslog
cron.*                /var/log/cron.log
#daemon.*            -/var/log/daemon.log
kern.*                -/var/log/kern.log
#lpr.*                -/var/log/lpr.log
mail.*                -/var/log/mail.log
#user.*                -/var/log/user.log

2.杀掉cron进程,再重启cron服务

先查看进程id:

rm /var/run/crond.pid
ps -A | grep cron

杀掉对应id:

kill 进程ID

重启cron服务:

cron restart

3.简单测试

做一个简单的测试,在终端中输入:

crontab -e

可以对cron任务进行编辑,我们添加一个简单的任务,在文件末尾加上如下内容:

*/2 * * * * date >> ~/time.log

然后保存,退出。

这个任务将每两分钟向~/time.log文件中输入一次当前时间。观察该任务是否正常执行,借以判断当前crontab是否可用。

你可能感兴趣的:(杂七杂八)