参考louisliao_1981的博客,网址:http://blog.csdn.net/LOUISLIAOXH/article/details/48242289
3 crontab -e时配置定时器,需要选择编辑器,默认为:nano,修改为vim
select-editor 之后选择3,或者4
保存即可。
4 设置mysqlBack.sh 为可执行的文件
chmod +x backup.sh
5 之后在crontab -e中最下面添加: (每晚22:30开始备份)
30 22 * * * /opt/tc/backup/backup root bdroom localhost room
出现:crontab: installing new crontab 即为成功。
如果出现Neither the JAVA_HOME nor the JRE_HOME environment variable is defined
At least one of these environment variable is needed to run this program
Neither the JAVA_HOME nor the JRE_HOME environment variable is defined
At least one of these environment variable is needed to run this program
是由于环境变量没有找到,需要在最前面 (/etc/profile存储的为环境变量的值)
#!/bin/bash
source /etc/profile
ubuntu使用cron设置定时启动任务
cron,是一个Linux定时执行工具,可以在无需人工干预的情况下运行作业。
配置文件位置: /etc/crontab 可以看到以下内容。
ununtu 通过调用 run-parts 命令,定时运行四个目录下的所有脚本。
1)/etc/cron.hourly,目录下的脚本会每个小时让执行一次,在每小时的17分钟时运行;
2)/etc/cron.daily,目录下的脚本会每天让执行一次,在每天的6点25分时运行;
3)/etc/cron.weekly,目录下的脚本会每周让执行一次,在每周第七天的6点47分时运行;
4)/etc/cron.mouthly,目录下的脚本会每月让执行一次,在每月1号的6点52分时运行;
打开命令crontab -e,来添加定时任务
cron 服务的启动与停止
cron是被默认安装并启动的。而 ubuntu 下启动,停止与重启cron,均是通过调用/etc/init.d/中的脚本进行。命令如下
启动:sudo /etc/init.d/cron start 关闭:sudo /etc/init.d/cron stop
重启:sudo /etc/init.d/cron restart 重新载入配置:sudo /etc/init.d/cron reload
可以用ps aux | grep cron命令查看cron是否已启动
也可以通过如下命令
/usr/sbin/service crond start // 启动服务
/usr /sbin/service crond stop // 关闭服务
/usr/sbin/service crond restart // 重启服务
/usr /sbin/service crond reload // 重新载入配置
cron是否在运行
pgrep cron
cron文件语法
Minute Hour Day Month Dayofweek command
每五分钟执行 */5 * * * *
每小时执行 0 * * * *
每天执行 0 0 * * *
每周执行 0 0 * * 0
每月执行 0 0 1 * *
每年执行 0 0 1 1 *
5 * * * * ls // 指定每小时的第5分钟执行一次ls命令 30 5 * * * ls // 指定每天的 5:30 执行ls命令
30 7 8 * * ls // 指定每月8号的7:30分执行ls命令50 7 * * * root run-parts/etc/cron.daily // 每天7:50以root 身份执行/etc/cron.daily目录中的所有可执行文件
实例:其中:0 22 10 * * ? * 表示每天10点22分,运行一次。(秒 分 时 )
<Task name="circleSite" schedule="0 22 10 * * ? *">
<CircleSiteTest />
<DispatchAll event="ProjectUpdateTest" />
</Task>
1 调出cron.log日志,原先该日志隐藏,此时调出。
去掉 cron.* /var/log/cron.log前面的注释,让其生效sudo vi /etc/rsyslog.d/50-default.conf
重启rsyslog服务
sudo service rsyslog restart
重启cron服务
sudo service cron restart
查看日志文件
tail -f /var/log/cron.log
2 如果日志出现Skipping @reboot jobs -- not system startup
重启的任务:
先把文件/var/run/crond.reboot删除,再restartcron