cronを実行するにはSSHセッションをアクティブに保つ必要がありますか?

cronを実行するにはSSHセッションをアクティブに保つ必要がありますか?

について知っていますnohup。停止後にプロセスが終了するのを防ぎます。

私が望むのは、私のセッションを実行する必要があるときにタイムアウトしても、私のユーザーcrontabが実行されることです。これを行うには、ユーザーがログインしている必要があると思います。

ユーザーがログインしているかどうかにかかわらず、ユーザーのcrontabが実行されていることを確認するにはどうすればよいですか?

ユーザーに実際にログインさせる必要がありますか?

システムcrontabを使用する必要がありますか?

他の解決策がありますか?

答え1

ログインするかどうかにかかわらず実行されます。

crontab(cronテーブル)の項目を確認し、指定した時間に実行するデーモンプロセスです。

これを行うためにログインする必要がある場合、これはあまり役に立ちません。sleepプロセスをバックグラウンドで実行するか、ループで実行するのと似ています。

答え2

いいえ、cronでジョブを実行するためにログインする必要はありません。全体的なアイデアは、ユーザーの対話なしでスケジュールされたタスクを追跡することです。 crontabを設定して忘れるだけでログインするのは面倒ではありません。

追加のヒント:Launcherを使用すると、バックグラウンドでプログラムを簡単に実行できます<command> &。あるいは、何らかの理由でフォアグラウンドで何かを実行したい、または実行する必要がある場合は、サーバーを切断した後でもセッションを使用したりアクティブにしたりscreenできます。tmux

関連情報