특정 사용자에 대한 크론 작업 비활성화

특정 사용자에 대한 크론 작업 비활성화

user1crontab에 , 에 대한 작업 목록이 있습니다 user2. 의 작업이 user2실행되는 것을 방지하고 싶습니다 .

user2에 목록을 등록하려고 했지만 cron.deny그로 인해 그 사람이 자신의 에 액세스할 수 없게 되었습니다 crontab. user2에 나열된 작업은 crontab계속 실행됩니다.

특정 사용자에 대한 크론 작업을 비활성화하려면 어떻게 해야 합니까?

답변1

무차별 대입!

crontab -u fred -e
%s/^/#/
:wq

아마도 더 우아한 방법이 있을 것입니다. 그러나 항상 이 작업을 수행하지 않는 한 가지고 있는 망치를 사용하십시오.

답변2

특정 사용자에 대해 crontab을 비활성화하는 가장 쉬운 방법은 해당 사용자를 찾는 것입니다크론탭그리고 이름을 바꾸세요. 데비안 매뉴얼 페이지크론말한다:

cron searches its spool  area  (/var/spool/cron/crontabs)  for  crontab
files  (which  are named after accounts in /etc/passwd); crontabs found
are loaded into memory.

따라서 파일 이름을 비밀번호에 없는 이름으로 바꾸십시오. 일반적으로 , 또는 유사한 접미사를 붙여서 파일 이름을 disabled바꾸 offline십시오 dead.

mv -vi /var/spool/cron/crontabs/user2 /var/spool/cron/crontabs/user2.disabled

Debian(및 Ubuntu와 같은 관련 시스템)에서는 다음 항목이 생성됩니다 /var/log/syslog.

(user2.disabled) ORPHAN (no passwd entry)

user2파일에도 추가해야 합니다 /etc/cron.deny. 그렇지 않으면 사용자가 직접 새 crontab을 만들 수 있습니다.

/etc/cron.denycrontab 에서 항목을 삭제하고 이름을 변경하여 사용자의 crontab을 다시 활성화합니다 .

mv -vi /var/spool/cron/crontabs/user2.disabled /var/spool/cron/crontabs/user2

답변3

삭제 /var/spool/cron/user1또는 user2? 또한 이러한 사용자 이름을 추가하고 싶습니다. /etc/cron.deny그렇지 않으면 해당 크론 작업을 다시 추가할 수 있습니다.

답변4

특정 사용자에 대한 crontab 작업을 차단하려면 루트 사용자로 로그인한 루트 사용자에게만 crontab 파일에 대한 액세스 권한이 있는지 확인하십시오. 1. 그런 다음 이 디렉토리의 /etc/cron.d 디렉토리로 이동하면 cron.deny 파일을 볼 수 있습니다. vi 편집기 또는 기타를 사용하여 사용자가 차단하려는 특정 사용자 이름을 입력합니다.

관련 정보