Linux crontab에서 처음 두 줄이 삭제되는 것을 방지할 수 있습니까?
일부 다른 응용 프로그램/스크립트가 crontab을 다시 설치할 수 있기 때문에 crontab의 처음 두 줄이 안전한지 확인하고 싶습니다.
답변1
crontab 항목을 덮어쓰는 응용 프로그램에 결함이 있는 것 같습니다. 그렇게 할 기회가 있으면 소프트웨어 작성자에게 연락하여 버그 보고서를 제출해야 합니다.
아니요, crontab에서 cron 작업을 "보호됨"으로 표시하는 것은 불가능합니다. 다음을 통해 미리 정의된 crontab을 로드하는 경우
$ crontab crontab.txt
그런 다음 현재 crontab의 기존 작업을 대체합니다.
프로그래밍 방식으로 crontab 항목을 추가하는 올바른 방법은 현재 crontab을 파일에 저장하고 파일을 업데이트한 다음 crontab을 다시 로드하는 것입니다. 대화형 편집 crontab을 사용할 때 이런 일이 발생합니다 crontab -e
( crontab
명령이 이 작업을 수행합니다).
스크립트에서 이는 다음과 같이 수행할 수 있습니다.
# dump the current crontab to file:
crontab -l >/tmp/crontab.txt
# some command to update the /tmp/crontab.txt text file, for example:
cat "$HOME/additional_entries.txt" >>/tmp/crontab.txt
# must also make sure that these entries don't already exist, obviously
# reload the modified crontab, which replaces the old one:
crontab /tmp/crontab.txt
rm -f /tmp/crontab.txt