RHEL / CentOS, /etc/cron.d/* altındaki tüm cronjob dosyalarını mı, yoksa sadece bazılarını mı yürütüyor?


19

Bu bir Red Hat Enterprise Linux 5 sistemidir (RHEL). Bu sistemi CFengine kullanarak yönetiyoruz.

Her zamankinden iki kat daha fazla çalışan birkaç cronjobumuz var. Altında cronjobs kontrol /etc/cron.d/ve bu dizin denilen gerçek komut dosyası host-backupiçerir ve ayrıca host-backup.cfsavedşu şekilde adlandırılan bir cfengine yedekleme dosyası içerir :

/etc/cron.d/host-backup
/etc/cron.d/host-backup.cfsaved

Bu işletim sistemi /etc/cron.d/*, üzerindeki tüm dosyaları yürütüyor mu yoksa yalnızca belirli bir kalıpla eşleşen dosyaları mı çalıştırıyor? Bunu yapılandırabilir miyim ve bu nerede tanımlanır?

Bu yanıtı RHEL veya CentOS belgelerinde bulamıyorum.

Yanıtlar:


20

(Red Hat desteği için ödeme yapıyorsanız, onlara bu tür sorular sormalısınız. Bu tam olarak sizin için ödediğiniz şeydir!)

Gönderen RHEL5 crontab(5)adam sayfası :

Varsa, /etc/cron.d/dizin, cron biriktirme dizini gibi ayrıştırılır, ancak içindeki dosyalar kullanıcıya özgü değildir ve bu nedenle /etc/crontabsözdizimiyle okunur (kullanıcı 6. sütunda açıkça belirtilir).

(RHEL man sayfalarını erişmeden okumanın daha basit bir yolu var mı? En azından bu paragrafın Red Hat yamasının bir parçası olduğunu görebiliyordum, bu yüzden standart bir Vixie Cron 4.1 özelliği değil.)

Kaynağında bakınca aşağıdaki dosyalar atlanır görüyoruz: .*, #*, *~. *.rpmnew, *.rpmorig, *.rpmsave. Evet, *.cfsaveddosyalarınız orijinallerin yanı sıra okunur.


Merhaba Giles, teşekkürler aynı sözdizimini buldum vixie-cron-4.1-77.el5_4.1.src.rpm. İronik olarak, bu metin cron için man sayfalarının hiçbirine dahil DEĞİLDİR ve sistemdeki herhangi bir metin dosyasına dahil edilmez. Bunun neden olduğundan emin değilim, ama bu başka bir tartışma konusu.
Stefan Lasiewski


@Giles: Siz kazandınız. RedHat kaynağı kesin cevabı içermelidir. Bu durumda (kaynak, kurulu dosyalardan farklı görünmektedir) [unix.stackexchange.com/questions/4815], ancak bu farklı bir konudur.
Stefan Lasiewski

6

İşte RedHat desteğinin cevabı:

Lütfen cron.d dizini altındaki tüm dosyaların incelenip yürütüldüğüne dikkat edin, bu temelde / etc / crontab dosyasının bir uzantısıdır (yani; / etc / crontab dosyasına giriş eklerseniz aynı etki)

Bu nedenle, "Bu işletim sistemi /etc/cron.d/* adresindeki tüm dosyaları yürütüyor mu, yoksa yalnızca belirli bir kalıpla eşleşen dosyaları yürütüyor mu? Bunu yapılandırabilir miyim ve bu nerede tanımlanır?"

/Etc/cron.d/* altındaki tüm dosyalar yürütülür (Kaynak dosyalarındaki belgelere göre .rpmsave, * ~, vb. Bunu bir yapılandırma dosyası aracılığıyla yapılandırmak mümkün değildir. Kaynak yeniden derlenmişse, bunun yapılandırılması mümkündür. Bu davranış, kaynakla birlikte gelen belgelerde belirtilmiştir, ancak bulabildiğim herhangi bir el kitabında veya kılavuz sayfasında görünmüyor.


5

Cevabı takip etmekte zorluk çekmenizin nedeni, bunun Red Hat'a özgü bir soru olmamasıdır. Gördüğünüz sorun standart işlevselliğinin bir parçasıdır cron- tanımladığınız dizindeki her dosya otomatik olarak ayrı bir iş olarak değerlendirilir .

Yani, sorunuzun kısa cevabı "evet, tüm dosyalar yürütülür". Bu yapılandırılabileceğini düşündüğüm bir şey değil.


2
Farklı cron uygulamaları vardır. Debian ve Ubuntu, Vixie Cron (3.0) ile birlikte gönderilir ve kullanımı kılavuz sayfasındacron.d açıklanır . RHEL, ISC cron 4.1 (aynı projenin bir çatalı) ile birlikte gelir ve kılavuz sayfasından (en azından CentOS'ta ) bahsetmez . cron.d
Gilles 'SO- kötü olmayı bırak

1
@Gilles: İşaretçiler için teşekkürler. Cronie'nin yüklü olduğu Fedora'yı da kullanıyorum (ayrıca Vixie / ISC Cron'un bir çatalı). Man sayfasında /etc/cron.darama yollarından biri olarak bahsediliyor . Cevabımda yeterli ayrıntı yoksa özür dilerim - bunun Red Hat için de geçerli olduğundan eminim. Durum böyle değilse lütfen bana bildirin
mlschechter

1
Buna baktıktan sonra, bu kesinlikle Red Hat'a özgü bir sorudur (cevabıma bakın). O kadar Red Hat'a özgü ki CentOS bile farklı ve Fedora da muhtemelen farklı (ama kontrol etmedim).
Gilles 'SO- kötü olmayı bırak'

1
@Gilles - yanıt vermedeki gecikme için üzgünüm. İtibariyle Red Hat EL 5 , Red Hat vixie-cron'u kullanır. RHEL 6 cronie kullanıyor. RHEL 5 belgelerini inceledikten sonra, orijinal (yanlış kaynaklanmışsa) sonucumu onayladığını düşünüyorum. Yine, bunun için kazma konusunda tüm yardım için teşekkürler.
mlschechter
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.