crontab -r로 실수로 제거 된 cron 작업 복구


64

crontab -r대신에 들어가서 crontab -e모든 cron작업이 제거되었습니다.

그러한 직업을 회복하는 가장 좋은 방법은 무엇입니까?


30
crontab -r이 기본적으로 예 / 아니요를 묻는 것이 더 합리적이지 않습니까?
user1446688

4
나는 예 / 아니오 프롬프트를 갖는 것이 좋은 생각이라고 생각합니다. 특히 e & r이 서로 바로 옆에 있기 때문에 .. crontab -e정말 일반적인 cron 명령입니다.
JustinP

4
7 년 정도의 관리자 작업으로 이런 일이 없었습니다. 이제 무섭습니다. crontab을 정기적으로 백업 할 시간입니다.
Caja

7
이것은 이미 나에게 두 번 일어났다. e편집과 r제거를 위해 프롬프트가 전혀없는 최악의 아이디어입니다 !
DaniG2k

9
가장 먼저해야 할 일은 alias crontab=crontab -i. 그러나 e & r이 서로 옆에 있다는 점을 감안할 때 crontab이 기본값을 설정해야합니다 ...
anishsane

답변:


49

crontab -r cron 작업을 포함하는 유일한 파일을 제거합니다.

따라서 백업하지 않은 경우 유일한 복구 옵션은 다음과 같습니다.

  • RedHat / CentOS에서 작업이 이전에 트리거 된 경우 cron 로그인을 찾을 수 있습니다 /var/log/cron. 이 파일은 작업을 다시 작성하는 데 도움이됩니다.
  • 다른 옵션은 파일 복구 도구를 사용하여 파일을 복구하는 것입니다. 시스템 파티션은 일반적으로 사용량이 많고 해당 섹터가 이미 덮어 쓰기 되었기 때문에 성공 가능성은 낮습니다.
  • Ubuntu / Debian에서 작업이 이전에 실행 된 경우 시도해보십시오 grep CRON /var/log/syslog

나는 당신을 투표 할 수 없었지만이 대답은 나에게 얼마나 유용했습니다. thankx
Teerath Kumar

1
@RajaRassani 그래도 답변은 눈금으로 표시됩니다. 피드백 주셔서 감사합니다!
SkyDan

이것은 단지 나에게 무슨 일이 있었 :) 총 안됐다 .. 내가 가상 서버와 regularly..so 내가 삭제 된 크론 탭 .. 백업을 회전 얻을거야 백업 그들을 사용합니까
JustinP을

간단 해 +1 :}
namezero

/tmp/crontab.wpMhKS에서 편집기로 만든 백업을 찾아 볼 수 있습니다 (물론 이름이 변경 될 수 있음). 최신 버전은 아니지만 제 경우에는 많은 도움이되었습니다
Jong Bor

21

/var/log/cron파일 이 없으면 에서 명령 (시간은 아님)을 복구 할 수 있습니다 syslog.

grep 'CRON.*(yourusername)' /var/log/syslog

그런 다음 날짜 표시를보고 대부분의 타이밍을 파악할 수 있습니다.


1
우분투에서 파일은 /var/log/syslog입니다.
Aurelijus Rozenas

@ Aurelijus Rozenas 실수로 sys를 디렉토리 경로에 / var / log / syslog 여야하는 디렉토리에 추가했습니다. 게시물을 수정했습니다.
Meow

2
grep 'CRON.*(yourusername)' /var/log/syslog
aidan

@Aidin 당신은 나의 구세주입니다! 자체 참고 사항 : 서버 공간이 가득 찬 동안에는 crontab 파일을 편집하지 마십시오.
Shadoath

1
휴 휴! 나는 매일 crontab을 백업하기 위해 cron을 추가했습니다. :)
SidJ

-5

vi /var/spool/cron/*user*또는 당신이 root사용자라면vi /var/spool/cron/root


3
이것은 더 나쁘다. 파일이 편집되었음을 알리지 않고 스풀 파일을 cron편집합니다. crontab편집 할 파일이 없으므로 사용자가 실수로 삭제 한 경우에도 작동하지 않습니다 .
roaima

실제로 crontab의 위치를 ​​알려주는 의견을 보내주십시오. 전체 시스템 백업이 있었고 cronjob을 쉽게 검색 할 수있었습니다. 감사!
Cookie
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.