이는 Red Hat Enterprise Linux 5(RHEL)입니다. 우리는 CFengine을 사용하여 이 시스템을 관리합니다.
평소보다 두 배 더 자주 실행되는 여러 cronjob이 있습니다. 아래 cronjob을 확인했는데 /etc/cron.d/
디렉토리에는 아래와 같이 실제 스크립트라는 이름의 host-backup
백업 파일과 cfengine이라는 백업 파일도 포함되어 있습니다 .host-backup.cfsaved
/etc/cron.d/host-backup
/etc/cron.d/host-backup.cfsaved
운영 체제가 해당 위치의 모든 파일을 실행하는지 /etc/cron.d/*
아니면 특정 패턴과 일치하는 파일만 실행하는지 여부입니다. 구성할 수 있나요? 어디에 정의되어 있나요?
RHEL 또는 CentOS 설명서에서 이 답변을 찾을 수 없습니다.
답변1
(Red Hat 지원 비용을 지불하는 경우 이러한 질문을 해야 합니다. 그것이 바로 귀하가 지불하는 비용입니다!)
존재하는 경우
/etc/cron.d/
디렉터리는 cron 스풀 디렉터리처럼 구문 분석됩니다. 단, 해당 디렉터리의 파일은 사용자별 파일이 아니므로/etc/crontab
구문(사용자가 열 6에 명시적으로 지정됨)을 사용하여 읽습니다.
(RHEL 매뉴얼 페이지에 액세스하지 않고 이를 더 쉽게 읽을 수 있는 방법이 있습니까? 적어도 이렇게 하면 이 단락이 Red Hat 패치의 일부이므로 표준 Vixie Cron 4.1 기능이 아니라는 것을 알 수 있습니다.)
소스 코드를 보면 다음 파일이 건너뛰는 것을 볼 수 있습니다. .*
, #*
, *~
. *.rpmnew
, *.rpmorig
. *.rpmsave
따라서 *.cfsaved
원본 파일 외에 귀하의 파일도 읽혀집니다.
답변2
답변을 찾는 데 어려움을 겪고 있는 이유는 이것이 Red Hat 특정 질문이 아니기 때문이라고 생각합니다. 당신이 보는 문제는 표준 기능의 일부입니다 cron
. 당신이 식별하는 디렉토리의 모든 파일은자동으로 별도의 작업으로 처리됨.
따라서 귀하의 질문에 대한 짧은 대답은 "예, 모든 파일이 실행됩니다"입니다. 나는 이것이 구성 가능하다고 생각하지 않습니다.
답변3
RedHat 지원팀의 답변은 다음과 같습니다.
cron.d 디렉토리 아래의 모든 파일이 검사되고 실행됩니다. 이는 기본적으로 /etc/crontab 파일의 확장입니다(즉, /etc/crontab 파일에 항목을 추가하면 효과는 동일합니다) )
따라서 "이 OS는 /etc/cron.d/*의 모든 파일을 실행합니까, 아니면 특정 패턴과 일치하는 파일만 실행합니까? 구성할 수 있습니까? 어디에 정의되어 있습니까?"라는 질문에 답해 보겠습니다.
/etc/cron.d/* 아래의 모든 파일이 실행됩니다(소스 파일의 문서에 따르면 일부 파일 확장자(예: .rpmsave, *~ 등)는 무시되는 것으로 나타납니다). 구성 파일을 통해 구성할 수 없습니다. 소스 코드를 다시 컴파일하면 이 기능을 구성하는 것이 가능할 수도 있습니다. 이 동작은 소스 코드에 포함된 문서에 언급되어 있지만 제가 찾을 수 있는 어떤 매뉴얼이나 매뉴얼 페이지에도 나타나지 않습니다.