crontab 파일을 / tmp에 저장해야합니까?


11

서버에 ssh하고 cron에 일일 작업을 추가하려고합니다 (로그 아웃해도 여전히 Kerberos 티켓을 갱신하기 위해 화면이나 tmux에서 프로그램을 계속 실행하고 싶습니다). 그래서을 실행 crontab -e하고 다음을 추가하십시오.

00 00 * * * kinit -R
00 12 * * * kinit -R

저장하면 편집자가 요청합니다.

File Name to Write: /tmp/crontab.HMpG7V 

/tmpOS 에서 파일을 삭제할 수 있습니까? 특히 서버에서 로그 아웃 한 후?

crontab 파일을 어디에 저장합니까? crontab 파일을 $ HOME 또는 더 나은 공간에 저장할 수 있습니까?


$ HOME 아래에 crontab 파일을 저장할 수 있습니까? 심볼릭 링크가 필요한 이유는 무엇입니까?
Tim

답변:


15

crontab -e실제 crontab 대신 / tmp에서 파일을 열어 새 crontab에 오류가 있는지 확인하고 실제 crontab을 해당 오류로 덮어 쓰지 못하게 할 수 있습니다. 오류가 없으면 실제 crontab이 업데이트됩니다. 경우 crontab -e단지 실제의 crontab에 바로 작성, 당신은 때문에 새의 crontab에 구문 오류로 실행하는 데 실패하여 cronjobs의 모든 위험을 감수한다.

sudoedit, visudo, vipw, 등 같은 원리로 작동합니다.

걱정하지 마십시오. 실제 crontab은 디스크의 비 휘발성 위치에 있습니다.


내 crontab 파일은 결국 어디에 저장됩니까? 서버에서 로그 아웃하면 crontab 파일은 어떻게됩니까? (저는 관리자가 아니며 서버에 대한 루트 액세스 권한이 없습니다)
Tim

1
실제의 crontab은 어딘가에서 살고있다 /var/spool(일반적으로),하지만 당신은해야 결코 실제의 crontab을 만지지 당신이 중 하나에 필요하지 않은 - 사용 crontab -e대신에. 어쨌든 원시 crontab 파일을 편집 할 수있는 올바른 액세스 수준이 없을 것입니다.
jayhendren

로그 아웃하면 crontab에 아무런 변화가 없습니다. / tmp에는 없습니다.
jayhendren

(1) crontab 파일은 개별 사용자 또는 모든 사용자를위한 파일입니까? (2) crontab 파일 편집이 작동하는지 어떻게 확인할 수 있습니까?
Tim

crontab은 사용자 당입니다. cronjob이 실행되는지 확인하기 위해 cron 로그를 확인할 수 있습니다. 일반적으로 /var/log/cron.log에 있지만 다른 위치 일 수도 있습니다.
jayhendren

5

/tmp임시 crontab 파일이 작성되는 위치입니다. 저장하고 종료 한 후에 crontab는 변경 사항을 시스템의 다른 적절한 디렉토리에 커밋합니다 (보통을 /var/spool/cron기억하면). 따라서 운영 체제가 / tmp를 삭제할 수는 있지만 crontab을 제거하지는 않습니다.


1

Crontab 파일은 사용자 이름 또는 사용자 ID로 / var / spool / cron / crontabs /에 있습니다. 여기에있는 crontab이 더 이상 로그인 계정에 연결되지 않은 상황이 발생할 수 있으므로 /home/userid/.crontab과 같은 홈 디렉토리에 사본을 저장하여 필요할 때 쉽게 복원 할 수 있도록하는 것이 좋습니다. 에. 또한 원하는 경우 개정 관리하에 배치 할 수도 있습니다.

홈 디렉토리가 다른 시스템으로 재배치되는 경우 시스템 관리자가이를 고려하지 않으면 스풀 디렉토리의 crontab이 종종이를 동반하지 않습니다. 시스템을 다시 실행해야 할 때 / var / spool도 항상 백업되거나 복원되지 않습니다.

따라서 다시 crontab 사본을 홈 디렉토리에 보관하는 것이 좋습니다.

즐겨 사용하는 편집기 (pico, vi, emacs 등)를 사용하여 ~ / .crontab을 편집 한 다음 crontab을 사용하여 / var / spool / crontabs에 적용하십시오. 이처럼 :

% pico ~/.crontab; crontab ~/.crontab

별칭을 좋아하는 경우 별칭을 대신 실행할 수 있습니다.


1
집의 crontab 파일이 다른 위치의 crontab 파일보다 우선하도록하려면 어떻게해야합니까?
Tim

"crontab ~ / .crontab"을 실행하면 / var / spool / cron / crontabs에 적용됩니다. pico, emacs 또는 vi를 사용하여 ~ / .crontab을 미리 편집하여 변경하십시오.
JonathanS

이것은 실제로 질문에 대답하지 않습니다.
아무도

@AndrewMedico : 기본 질문은 "내 crontab 파일을 어디에 저장해야합니까? crontab 파일을 $ HOME 또는 더 나은 공간 아래에 저장할 수 있습니까?"인 것 같습니다. 아니면 주석에서 팀의 질문을 언급하고 있습니까?
JonathanS
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.