שאלה מתי פועל 'cron.daily'?


מתי נכנסים ערכים cron.daily (ו .weekly ו .hourly) לרוץ, והוא להגדרה?

לא מצאתי תשובה חד משמעית לכך, ואני מקווה שיש כזו.

אני מפעיל RHEL5 ו CentOS 4, אבל עבור distros / פלטפורמות אחרות יהיה נהדר, יותר מדי.


178
2018-04-26 15:31




מופעל NetBSD, פעמים עבור cronjobs יומית, שבועית, חודשית נקבעים crontab של השורש. - hd1
שאלה זו תהיה שימושית יותר אם השאלה נערכה להיות גנרית יותר. לכל הפחות להפוך את השאלה הגנרית עבור כל גירסאות של redhat, centos distros במקום רק עבור גרסאות 4 ו 5 (אשר אינם בשימוש נרחב והם "סוף הייצור" (דומה ל סוף החיים). - Trevor Boyd Smith
@TrevorBoydSmith - שאלה זו נשאלה לפני כמעט 8 שנים. אתה מוזמן לשאול אחד מעודכן עבור גרסאות חדשות יותר. אבל RHEL 6 אפילו לא היה קיים באפריל 2010: access.redhat.com/articles/3078#RHEL6 - warren
@warren הכוונה שלי היא לא לבקר אבל רק לשפר את השאלה stackoverflow באופן כללי. (אני מבינה שרהל 6 לא היה קיים כשהשאלה נשאלת, כי לשאלה יש הרבה סתייגויות עכשיו זה יהיה נחמד לקבל את זה יותר גנרי.) - Trevor Boyd Smith
@TrevorBoydSmith .. יש תשובה עבור CentOS / RHEL 6 כבר :) ... אני אשמח לאשר עריכות טוב ממך אם יש לך כמה רעיונות. קדימה, בצע הצעות עריכה לשאלה שחשבת עליה - warren


תשובות:


עבור ההפצות אתה מזכיר:

על CentOS 5.4 (צריך להיות זהה עבור RHEL5)

grep run-parts /etc/crontab

01 * * * * root run-parts /etc/cron.hourly
02 4 * * * root run-parts /etc/cron.daily
22 4 * * 0 root run-parts /etc/cron.weekly
42 4 1 * * root run-parts /etc/cron.monthly

אז cron.daily פועל בשעה 04:02.

אותו הדבר ב- CentOS 4.8


136
2018-04-26 16:23



האם יש סיבה מאחורי זה? אני יכול רק להניח שזה יהיה הזמן השקט ביותר בשרת. - The Pixel Developer
@ מה הוא פועל באובונטו? אתה יכול בבקשה לספר איך אני יכול לבדוק את זה? אני לא מסוגל להבין את הפלט הפקודה - Narendra Jaggi
@NarendraJaggi את "run-parts" הפקודה פירושו "להפעיל את הכל בתיקיה זו". Cron.daily, וכו 'תיקיות עבודה כי יש עבודה cron לבצע חלקים לרוץ על ספריות אלה. לכן grep run-parts /etc/crontab רק מוצא את ההוראות על כאשר לרוץ חלקים נקרא עבור כל ספריות אלה. - Jordan Reiter
זו כבר לא תשובה תקפה עבור CentOS 6 ומעלה, לגלול למטה יותר. - lzap


מדף האיש:

 Cron also searches for /etc/anacrontab

/etc/anacrontab במערכת שלי (Fedora 12):

1       5       cron.daily              nice run-parts /etc/cron.daily
7       25      cron.weekly             nice run-parts /etc/cron.weekly
@monthly 45     cron.monthly            nice run-parts /etc/cron.monthly

ראה גם man anacrontab


63
2018-04-26 15:35



זהו המקרה CentOS 6. תודה. - mbrownnyc
זה אומר 5:00 כל "1" ימים ?. סליחה, אבל זה לא עונה. - elysch
@elysch תן לי לחזור על השורה האחרונה של התשובה שלי: ראה גם "אדם anacrontab" - leonbloy
הסבר טוב של אנקרון כאן. בעיקרון, אנקרון יש ל אין זמן התחלה קבוע, אלא יתחילו את התהליך על בסיס כאשר התהליך האחרון רץ, עם עיכוב מסוים. אם ההתקן כבוי כאשר התהליך היה צריך לרוץ, אז זה יתחיל את התהליך כאשר המכונה חוזרת, לאחר העיכוב שצוין (לא חסרים טווחים מיוחדים + עיכוב אקראי, ראה תשובה על ידי @spechal). - storm_m2138
@mbrownnyc וגם CentOS-7 מדי - Trevor Boyd Smith


עבור CentOS 6, אתה צריך grep / etc / anacrontab והתשובה משתנה אם שרת / מחשב נייד / dekstop / וכו 'כבר כבוי או לא.

cat /etc/anacrontab 
# /etc/anacrontab: configuration file for anacron

# See anacron(8) and anacrontab(5) for details.

SHELL=/bin/sh
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
# the maximal random delay added to the base delay of the jobs
RANDOM_DELAY=45
# the jobs will be started during the following hours only
START_HOURS_RANGE=3-22

#period in days   delay in minutes   job-identifier   command
1   5   cron.daily      nice run-parts /etc/cron.daily
7   25  cron.weekly     nice run-parts /etc/cron.weekly
@monthly 45 cron.monthly        nice run-parts /etc/cron.monthly

אז, בין השעות 3:00 ו 10 PM** (לאחר אתחול מחדש ואחרי המכונה כבר מעלה במשך 5 דקות ^ ^), לרוץ / etc / cron.daily. אם אין אתחול מחדש, העבודה צריכה לפעול בשעה 3:05 AM + +.

** As defined by START_HOURS_RANGE
^^ As defined by FIELD_TWO (i.e. the 5 after the 1 in the cron.daily line)
++ plus a random time between 0 and 45 minutes as defined by RANDOM_DELAY

התייחסות: http://linux.die.net/man/5/anacrontab


38
2017-10-29 21:20





עבור מערכות SuSE (במיוחד SLES 11.1 ו openSuSE 10.3) את זמן הריצה היומי של סקריפטים /etc/cron.daily נשלט על ידי הערך של DAILY_TIME משתנה מוגדר / etc / sysconfig / cron קובץ.

אם המשתנה DAILY_TIME אינו מוגדר, הוא ברירת המחדל ל: (זמן האתחול האחרון + 15 דקות).


13
2017-08-16 03:18



תודה רבה! Suse הוא אטום למדי לי ואני מעריך את התשובה שלך. - dr0i


ב- Ubuntu, תמצא קובץ / etc / crontab, שממנו הוא מוגדר. אני מניח שזה משהו דומה ב- RH ו Centos.


9
2018-04-26 15:33



זהו הקובץ הנכון עבור אובונטו Lucid 10.04 LTS. ברירת המחדל שלי היא 6:25 בבוקר עבור cron.daily. - geekQ
עדיין מוגדר כ 6:25 בבוקר על אובונטו 15.04. אבל אני שם לב כי cron חייב להכניס כמה אקראיות בזמן זה מתחיל את העבודות. מסתכל על חותמות של הקבצים שלי העבודה היומית שלי יוצר, אני רואה על כמה ימים היא פועלת מוקדם ככל 6:26, ועל אחרים מאוחר כמו 08:04. - Stéphane
עדיין מוגדר בשעה 6:25 בבוקר על אובונטו 16.04 - שעה בשעה 17 דקות בשעה האחרונה. יומי בשעה 06:25. שבועי בשעה 06:47 יום שבת. חודשי בשעה 6:52 בבוקר ביום הראשון של החודש. - WinEunuuchs2Unix


CentOS6.x / RedHat6.x מתקינה כברירת מחדל את החבילה cronie-anacron. אתה חייב:

yum להתקין cronie-noanacron

yum למחוק cronie-anacron

לאחר מכן יש לך /etc/cron.d/dailyjobs כדי להגדיר את הזמן הטוב ביותר בלוח הזמנים עבור היומי שלך, שבועי וחודשי עבודות.


4
2017-08-29 19:50



אם anacron מותקן, אתה לא יכול פשוט לערוך / etc / anacrontab לפי הערות אחרות כאן במקום להסיר את זה? - cincodenada
@cincodenada זה לא מה שדניאל סטנטוס מציע. - mikemaccana


אני משתמש Slackware (14.0), ולא היה /etc/crontab. כמו כן, anacron אינו חלק מההפצה.

הפתרון על המערכת שלי היה פשוט כמו ריצה crontab -l בתור root:

root@flea:~# crontab -l
# If you don't want the output of a cron job mailed to you, you have to direct
# any output to /dev/null.  We'll do this here since these jobs should run
# properly on a newly installed system.  If a script fails, run-parts will
# mail a notice to root.
#
# Run the hourly, daily, weekly, and monthly cron jobs.
# Jobs that need different timing may be entered into the crontab as before,
# but most really don't need greater granularity than this.  If the exact
# times of the hourly, daily, weekly, and monthly cron jobs do not suit your
# needs, feel free to adjust them.
#
# Run hourly cron jobs at 47 minutes after the hour:
47 * * * * /usr/bin/run-parts /etc/cron.hourly 1> /dev/null
#
# Run daily cron jobs at 4:40 every day:
40 4 * * * /usr/bin/run-parts /etc/cron.daily 1> /dev/null
#
# Run weekly cron jobs at 4:30 on the first day of the week:
30 4 * * 0 /usr/bin/run-parts /etc/cron.weekly 1> /dev/null
#
# Run monthly cron jobs at 4:20 on the first day of the month:
20 4 1 * * /usr/bin/run-parts /etc/cron.monthly 1> /dev/null

4
2018-03-12 21:50





מ /etc/anacrontab על מערכת Ubuntu 9.10 שלי:

1       5       cron.daily       nice run-parts --report /etc/cron.daily
7       10      cron.weekly      nice run-parts --report /etc/cron.weekly
@monthly        15      cron.monthly nice run-parts --report /etc/cron.monthly

3
2018-04-26 15:54