crontabファイルを/ tmpに保存しますか?


11

私はサーバーにsshして、いくつかの毎日のジョブ(特に、ログアウトしてもKerberosチケットを更新し、画面内のプログラムまたはtmuxを引き続き実行したい場合)をcronに追加したいと思います。だから私はを実行し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が実行に失敗する危険があります。

sudoeditvisudovipw、などと同じ原理で動作します。

心配しないでください。実際のcrontabはディスク上の不揮発性の場所にあります。


最終的に私のcrontabファイルはどこに保存されますか?サーバーからログアウトした場合、crontabファイルはどうなりますか?(私は管理者ではなく、サーバーへのrootアクセス権もありません)
Tim

1
あなたの実際のcrontabはどこかに住んでいる/var/spool(一般的に)、しかし、あなたがすべき決してあなたの実際のcrontabには触れていない、あなたはどちらか、する必要はありません-使用crontab -e代わりに。とにかく、生のcrontabファイルを編集するための適切なアクセスレベルがありません。
jayhendren 2015

ログアウトしても、crontabには何も起こりません。/ tmpにはありません。
jayhendren 2015

(1)crontabファイルは個々のユーザー用ですか、それともすべてのユーザー用ですか?(2)crontabファイルへの編集が機能するかどうかを確認するにはどうすればよいですか?
Tim

crontabはユーザーごとです。cronジョブが実行されていることを確認するには、cronログを確認します。通常は/var/log/cron.logにありますが、他の場所でもかまいません。
jayhendren 2015

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

これは実際には質問の答えにはなりません。
2015

@AndrewMedico:主な質問は、「どこにcrontabファイルを保存しますか?crontabファイルを$ HOMEまたはより良いスペースに保存できますか?」または、ここのコメントでティムの質問を参照していますか?
JonathanS
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.