linux定时任务常规操作
查看当前定时任务:
crontab -l
假设我要设置一个任务,每分钟就要做一个数据同步,这个同步脚本的路径是/home/blue/do/rsyncfile.sh,那么我可以在这么配置
crontab -e 进入定时任务编辑器
* * * * * /home/blue/do/rsyncfile.sh
or
*/1 * * * * rsync -vzrtopg --delete --progress /home/test/t1/ [email protected]::www --password-file=/root/rsyncd.passwd > /dev/null 2>&1 &
假如我们需要修改为每5分钟运行数据同步的脚本,那么同样使用 crontab -e 进入编辑:
*/5 * * * * /home/blue/do/rsyncfile.sh
4月1号凌晨2点0分就会开始启动
0 2 1 4 * /home/blue/do/rsyncfile_day.sh
crontab命令的语法
crontab [-u username] [-l|-e|-r]
选项与参数:
-u :只有 root 才能进行这个任务,亦即帮其他使用者创建/移除 crontab 工作排程;
-e :编辑 crontab 的工作内容
-l :查阅 crontab 的工作内容
-r :移除所有的 crontab 的工作内容,若仅要移除一项,请用 -e 去编辑
清空用户blue用户目前的 crontab:
crontab -r
crontab -l
no crontab for blue
crontab命令的限制
/etc/cron.allow:将可以使用 crontab 的帐号写入其中,若不在这个文件内的使用者则不可使用 crontab;
/etc/cron.deny:将不可以使用 crontab 的帐号写入其中,若未记录到这个文件当中的使用者,就可以使用 crontab 。
以优先顺序来说, /etc/cron.allow 比 /etc/cron.deny 要优先, 而判断上面,这两个文件只选择一个来限制而已,因此,建议你只要保留一个即可, 免得影响自己在配置上面的判断!一般来说,系统默认是保留 /etc/cron.deny ,你可以将不想让他运行 crontab 的那个使用者写入 /etc/cron.deny 当中,一个帐号一行!
crontab配置文件详解
crontab -e 是针对使用者的 cron 来设计的,如果是『系统的例行性任务』时,就要编辑 /etc/crontab 这个文件。
那就是 crontab -e 这个 crontab 其实是 /usr/bin/crontab 这个运行档,但是 /etc/crontab 可是一个『纯文字档』,必须用 root 的身份编辑一下这个文件。
首先我们要来看看crontab的文件内容
cat /etc/crontab
# /etc/crontab: system-wide crontab
# Unlike any other crontab you don't have to run the `crontab'
# command to install the new version when you edit this file
# and files in /etc/cron.d. These files also have username fields,
# that none of the other crontabs do.
SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
# m h dom mon dow user command
17 * * * * root cd / && run-parts --report /etc/cron.hourly
25 6 * * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
47 6 * * 7 root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
52 6 1 * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )
后续继续整理:
https://www.jb51.net/article/148575.htm
上一篇: Linux系统-Centos常规操作命令
下一篇: linux常规操作