Σειρά εκτέλεσης των cronjobs

George Notaras gnot at g-loaded.eu
Mon Oct 29 02:37:50 EET 2007


Ας θεωρήσουμε ότι δύο cronjobs έχουν προγραμματιστεί να εκτελούνται κάθε
5 λεπτά και ότι είναι ορισμένα μέσα στο ίδιο αρχείο στον
κατάλογο /etc/cron.d.

Παρακάτω είναι ένα τέτοιο παράδειγμα/πρόβλημα:

  # Sysstat
  */5 * * * * root /usr/lib/sa/sa1 1 1
  # Cacti poller
  */5 * * * * cacti /usr/bin/php /usr/share/cacti/poller.php > /dev/null
2>&1

Αν με ρωτούσε κανείς σχετικά με το ποιο από τα δύο πιστεύω ότι θα
εκτελεστεί πρώτο, θα στοιχημάτιζα ότι η σειρά εκτέλεσης θα ήταν αυστηρά
η σειρά με την οποία είναι ορισμένα μέσα στο παραπάνω αρχείο. Εντούτοις,
η σειρά εκτέλεσης είναι η αντίστροφη. Το ίδιο συμβαίνει και όταν τα δύο
jobs είναι ορισμένα σε διαφορετικά αρχεία μέσα στον /etc/cron.d.

Πώς (στα κομμάτια) εξηγείται ή καλύτερα δικαιολογείται αυτή η
συμπεριφορά?

Με τι κριτήριο επιλέγει το crond ποιο job θα τρέξει πρώτο, όταν 2 ή
περισσότερα jobs είναι προγραμματισμένα για εκτέλεση την ίδια χρονική
στιγμή? Μήπως τα διαλέγει αλφαβητικά? Μήπως ανάλογα με το modification
time του κάθε αρχείου? Μήπως εκτελούνται παράλληλα? Μήπως να πήγαν στο
βουνό?

Ευχαριστώ

ΥΓ: Έχω κάνει την ίδια ερώτηση και στο φορουμ[1]. Ας απαντήσει όπου
βολεύεται ο καθένας.

[1]: http://forum.hellug.gr/servers/cronjobs/msg1188/#msg1188





More information about the Linux-greek-users mailing list