종종 예약 된 작업을 편집의 crontab -e를 사용, 두 번째 손 싼 노크 명령의 crontab -r, 슬픈 알림이되었다
사용법 :의 crontab [- U 사용자] 파일 의 crontab [ -u 사용자] [-i] {-e | -l | - R} ( 기본 동작이 입니다 당, 대체 1003.2 ) -e (사용자 편집 ' 의 crontab을) -l (리스트 사용자 ' 의 crontab을) -r (사용자 삭제 ' 의 crontab을)를 (-i 프롬프트 사용자 삭제하기 전에 ' 의 crontab을)를
그럼 내 본능은, 구글은 신속하게 솔루션 모두의 / var / 로그 / 크론 * 파일 복구를 통해 발견 찾을 수 있지만이 문서 아를 발견하지 않았습니다
내가 메모리에서 여러 작업에 쓸 예정 낙담으로, 다른 사람들이 천천히 누군가 복구 찾기 위해,이 디렉토리하지 않는에서 로그 파일을 가능성이있는 생각을했다
그래서 순간 "크론 '관련 문서에 대한, 내가 글로벌 검색
sudo를 찾을 수 / --name " * 크론 * "
우리는 매우 큰 소리 파일이 많이 찾을 : "/tmp/crontab.VgsSIK/crontab"
내가 먼저 악수, 15 일전 파일 날짜, 파일을 확인 정력 명령을 쓰러 뜨린, 와우, 내 세계 색으로 돌아왔다,의 crontab 파일은 백업입니다. 파일 15 일전, 또한 충분하지만에 다시 살아 날 수 있도록
>>>>>>>>>>>>>>>>>>>>>>>>
위는 어떻게해야하는지, 백업이없는 경우, 로그 파일이 있음에 대한 이야기를 여기, 내 이야기
로그 파일에 따라 복구 :
CAT / var에 / 로그 / 크론 * | 그렙 -i " 사용자 " | 그렙 " CMD를 " | AWK의 -F ' ( ' ' {} 3 인쇄 $. ' | AWK의 -F ' ) ' ' {} 1 인쇄 $. ' | 정렬 -u> crontab_tmp
설명 : GREP을 - I "사용자": 다른 사용자가 정보 필터링입니다 GREP " CMD를을 " : 비 명령 행 필터링 할 필요가있다 된 awk -F가 ' ( ' ' . {} 3 인쇄 $를 ' :이다 '('구분 . 여기서, 세 번째 요소 추출 결과 "/ 홈 / 스크립트 / check_alive.sh)" 은 awk -F ' ) ' ' {1} 인쇄 $. " : 세퍼레이터 그대로' '), 제 1 구성 요소를 추출하는 단계를 포함한다. 여기에 결과가 "/ 홈 / 스크립트 /입니다 check_alive.sh는" 이 시점에서, 우리는 자신의 요구를 명령 추출되었지만, 때문에 트리거의 crontab의 타이밍의 중복이 많이있을 것입니다. 나중에 재 필요가 정렬 > cmd_tmp 님의 중복 cmd_tmp 파일 출력 후 이후 다시 명령에 따라 추출 / var에 / / 로그 지정된 방식으로 복원 할 크론 파일 간격을 확인 / VAR/ 스풀 / 크론 /
>>>>>>>>>>>>>>>>>>>>>>>의 crontab 백업 스크립트 스케줄
에서 이 문서를 원래 저자에게 감사를 붙여
설명 ⚠️ : 일곱 매일 아침 7 일 전 삭제, 데이터 백업을 crontab에합니다
다음과 같이 스크립트입니다 :
backup_crontab. 쉬 # !는 / usr / 빈 / ENV의 bash는 BACKUP_DIRECTORY = " $ {HOME} / crontab_backup " 만약 [! -e " $ {BACKUP_DIRECTORY} " ]; 다음 MKDIR - P는 $ {BACKUP_DIRECTORY} 인터넷 의 crontab -l> $ {BACKUP_DIRECTORY} / $ ( 날짜 ' + %의 Y %의 m %의 D는 ' ) 된 .txt 찾을 $ {HOME} / crontab_backup -mtime + 7 -name ' * .txt입니다 ' 간부 RM -rf {} \;
설명 :
위의 스크립트 " 가정을 찾기} {$ / crontab_backup -mtime +7 -name '* .txt 인'-rf RM 간부 {} \; " 로 대체 할 수있다 " } 홈 찾기 {$ / crontab_backup -mtime +7 -name '* .txt 인'| xargs를 RM -rf " .
crontab을 예약 된 작업에서 위 스크립트를 수행 할 수
backup_crontab ## 0 7 * * * CD / 데이터 / siterecoffline && SH backup_crontab. 쉬