ºìÁªLinuxÃÅ»§
Linux°ïÖú

Linux֮ѭ»·Ö´ÐÐÈÎÎñ

·¢²¼Ê±¼ä:2014-06-08 09:26:11À´Ô´:ºìÁª×÷Õß:velcbo
¼ò½é

ÔÚLinuxÏ£¬crond·þÎñÊÇʵÏÖÖÜÆÚÐԼƻ®ÈÎÎñµÄ¹¤¾ßÖ®Ò»£¬crond·þÎñÄÜÔڹ涨µÄʱ¼äÈ¥Ö´ÐÐÉèÖõÄÃüÁî¡¢½Å±¾£¬¹¦ÄÜÀàËÆwindowsϵġ°¼Æ»®ÈÎÎñ¡±¡£¶ÔÒ»¸ö¶àÓû§¶àÈÎÎñµÄlinuxϵͳÖУ¬Ã¿¸öÓû§¶¼¿ÉÒÔÉèÖÃ×Ô¼ºµÄcrontab£¬²¢ÇÒÔÚ/var/spool/cron/Õâ¸öĿ¼Ï»ᴴ½¨Ò»¸öÓë´´½¨¼Æ»®ÈÎÎñÓû§Í¬ÃûµÄµµ°¸£¬µµ°¸µÄÄÚÈݾÍÊÇ´ËÓû§Ê¹Óá°crontab -e¡±ÃüÁîÖÆ×÷µÄ¼Æ»®ÈÎÎñ¡£¶øÃ¿Ò»´Î¼Æ»®ÈÎÎñµÄÖ´ÐУ¬crond¶¼»á°ÑÖ´ÐеÄÈÕÖ¾¼Ç¼µ½/var/log/cronÕâ¸öÈÕÖ¾µµ°¸ÖУ¬Í¨¹ýÕâ¸öµµ°¸¾Í»áÖªµÀÔÚij¸öʱ¼ä£¬crond³ÌÐòÖ´ÐÐÁËÄĸöÖ¸Áî¡£×÷Ϊϵͳ¹ÜÀíÔ±¿ÉÒÔÏÞ¶¨crontabµÄʹÓÃÕߣ¬/etc/cron.allowÓë/etc/cron.denyÕâÁ½¸öµµ°¸¾ÍÊÇÀ´×öȨÏÞµÄÉ趨µÄ£¬Ò»°ãÖ»±£ÁôÒ»¸öµµ°¸¼´¿É£¬¼ÙÈçÖ»±£Áô/etc/cron.denyÕâ¸öµµ°¸£¬µµ°¸ÖеÄÄÚÈÝÊÇÒ»ÐÐÒ»¸öÓû§µÄÓû§Ãû£¬±íʾÔÚÕâ¸öµµ°¸µÄÓû§²»ÄÜʹÓüƻ®ÈÎÎñµÄ¹¦ÄÜ£¬¶øÃ»ÓÐÔÚÕâ¸öµµ°¸Ä򵀮äËûÓû§Ôò¿ÉÒÔʹÓüƻ®ÈÎÎñµÄ¹¦ÄÜ¡£

ÃüÁî¸ñʽ

ÔÚÖÆ¶¨¼Æ»®ÈÎÎñʱ£¬ÎÒÃÇʹÓÃcrontabÕâ¸ö¹¤¾ßÀ´É趨£¬crontabµÄ³£ÓÃÑ¡ÏîÊÇ¡°-e¡±Óë¡°-l¡±¡£
-e£ºedit£¬±íʾ±à¼­¼Æ»®ÈÎÎñÁбí
-l£ºlist£¬±íʾÁгö¼Æ»®ÈÎÎñÁбí
[root@zhaochj ~]# crontab -e

¼Æ»®ÈÎÎñµÄÉèÖûáÉæ¼°µ½Á½¸öÒªËØ£ºÒ»ÊÇʱ¼ä£»¶þÊÇÖ¸Áî¡£Ò²¾ÍÊÇÔÚʲôʱ¼ä»áÖ´ÐÐʲôÑùµÄÖ¸Áî¡£
cronµÄÓï·¨¸ñʽ£ºÎå¸öʱ¼ä×ֶΣ¬Ò»¸öÖ¸Áî×Ö¶Î
·Ö ʱ ÈÕ Ô ÖÜ Ö¸Áî

ʱ¼äµÄȡֵ·¶Î§£º


field allowed values
----- --------------
minute 0-59
hour 0-23
day of month 1-31
month 1-12 (or names, see below)
day of week 0-7 (0 or 7 is Sun, or use names)
ÔÚÕâÎå¸öʱ¼ä×Ö¶Îʱ¿ÉÒÔʹÓÃÒ»Ð©ÌØÊâµÄ·ûºÅ£º
* £º±íʾÈκÎʱ¿Ì
£¬£º±íʾʱ¼ä·Ö¸î£¬±ÈÈçÔÚ¡°·Ö¡±Õâ¸ö×Ö¶ÎÀïµÄֵΪ¡°1£¬15¡±±íʾµÚÒ»·Ö£¬µÚ15·ÖÁ½¸öʱ¿Ì
- £º±íʾһ¸öʱ¼ä¶Î£¬ÈçÔÚ¡°Ê±¡±Õâ¸ö×Ö¶ÎÀïµÄֵΪ¡°2-5¡±±íʾÁ㳿2µãµ½Á㳿5µãÕâ¸öʱ¼ä·¶Î§ÄÚ
/n£ºn±íʾһ¸öÕûÊý£¬ÈçÔÚ¡°ÈÕ¡±Õâ¸ö×Ö¶ÎÀïµÄֵΪ¡°*/1¡±±íʾÿ¸ôÒ»ÌìÖ´ÐÐÒ»´ÎÃüÁî
ʱ¼ä¶ÎµÄһЩʾÀý

43 21 * * * 21:43 Ö´ÐÐ

15 05 * * * 05:15 Ö´ÐÐ

0 17 * * * 17:00 Ö´ÐÐ

0 17 * * 1 ÿÖÜÒ»µÄ 17:00 Ö´ÐÐ

0,10 17 * * 0,2,3 ÿÖÜÈÕ,Öܶþ,ÖÜÈýµÄ 17:00ºÍ 17:10 Ö´ÐÐ

0-10 17 1 * * ?ÔÂ1ÈÕ´Ó 17:00µ½17:10 ?¸ô1·ÖÖÓ Ö´ÐÐ

0 0 1,15 * 1 ?ÔÂ1ÈÕºÍ 15ÈÕºÍÖÜÒ»µÄ 0:00 Ö´ÐÐ

42 4 1 * * ¡¡ ¡¡ ?ÔÂ1ÈÕµÄ 4:42·Ö Ö´ÐÐ

0 21 * * 1-6¡¡¡¡ ÖÜÒ»µ½ÖÜÁù 21:00 Ö´ÐÐ

0,10,20,30,40,50 * * * *¡¡Ã¿¸ô10·Ö Ö´ÐÐ

*/10 * * * * ¡¡¡¡¡¡¡¡¡¡¡¡ ÿ¸ô10·Ö Ö´ÐÐ

* 1 * * *¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ ´Ó1:0µ½1:59 ÿ¸ô1·ÖÖÓ Ö´ÐÐ

0 1 * * * Á㳿1:00 Ö´ÐÐ

0 */1 * * *¡¡¡¡¡¡¡¡¡¡¡¡¡¡ ?ʱ0·Ö ÿ¸ô1Сʱ Ö´ÐÐ

0 * * * *¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ ?ʱ0·Ö ÿ¸ô1Сʱ Ö´ÐÐ

2 8-20/3 * * * 8:02,11:02,14:02,17:02,20:02 Ö´ÐÐ

30 5 1,15 * * ÿÔÂ1ÈÕ ºÍ 15ÈÕµÄ 5:30 Ö´ÐÐ

Ò»¸ö±¸·Ý½Å±¾Óëcron½áºÏ´ïµ½×Ô¶¯±¸·ÝµÄʵÀý

±¸·Ý½Å±¾ÈçÏ£º
[root@zhaochj ~]# vim autoback.sh
#!/bin/sh
#
#author: Jack.zhao
#Date: 2013-11-29
#Email: 419775240@qq.com
#Description: This script backup file
DATE=$(/bin/date +%Y%m%d)
BASENAME=$(basename $1)
[ -d /backup ] || /bin/mkdir /backup
/bin/tar -czf /backup/$BASENAME.$DATE.tar.gz $1 1> /dev/null 2>> /backup/$BASENAME.error.log
if [ $? -eq 0 ]
then
echo "$1 $DATE backup successfully" >> /backup/$BASENAME.success.log
else
echo "ERROR:failure $1 $DATE backup!" >> /backup/$BASENAME.error.log
fi

[root@zhaochj ~]# chmod +x /root/autoback.sh

´Ë½Å±¾µÄʹÓ÷½·¨£º
[root@zhaochj ~]# ./autoback.sh /etc/fstabefsg

½Å±¾×¼±¸ºÃÁË£¬ÄÇÀ´ÉèÖüƻ®ÈÎÎñ£¬Èç¹ûÎÒÃÇÏë¶Ô/homeĿ¼×öÒ»¸ö×Ô¶¯±¸·Ý¹¤×÷£¬ÒªÇóÊÇÿ¸öÔµÄ1ºÅ¡¢15ºÅµÄÁ㳿3µã15·Ö×ö±¸·Ý¹¤×÷£º
[root@zhaochj ~]# crontab -e
15 3 1,15 * * /root/autoback.sh /home

À´Ô´£ºLinuxÉçÇø
ÎÄÕÂÆÀÂÛ

¹²ÓÐ 0 ÌõÆÀÂÛ