CronniX はオープンソースとしてリリースされているのですか?
はい。バージョン 1.5 からは CronniX をオープンソースとしてリリースしています。しかし、常に最新バージョンを逐次オープンソース化できるわけではありませんので、その点は堪忍してください。cron を起動するには何をすればよいですか?
cron は常に動作しているシステムプロセスです。スケジュールにしたがって処理を実行させるには、crontab を編集し変更内容を保存するだけでよいのです。cron は毎分すべてのファイルを参照し、ペンディングになっている処理を実行します。
自分の crontab が動作しているかどうかを確認するには?
crontab の設定は少々扱いにくい場合があります。といいますのも、コマンドライン上では問題なく動作するスクリプトでも、cron から実行させた場合は、実行環境の差異のために動作しないことがあるからです。cron の出力を crontab のオーナーあてにメールで送信すると便利です。
以下は OSX 10.1 以前の場合です。Jaguar に関しては次項をご覧ください。
ローカルのメールを受信するには、Mail.app で特別なメールアカウントを作成する必要があります。これは www.macosxhints.com で紹介されていた方法です:
"簡単な方法"
Authored by: frjo on Tue, May 8 at 11:05AM
ローカルメールを送信するために sendmail を動作させる必要はありませんので、ローカルメール(当然 cron からのメールも含まれる)を受信するためにするべきことは、基本的に以上ですべてです。また、root あてのメールをあなたのアカウントへ転送することもできます。あなたのユーザ名を記した“.forward”という名前のファイルを作成し、root のホームディレクトリ(/private/var/root)に置いておけば OK です。
以下は OSX 10.2(Jaguar)の場合です。
Jaguar では、Mail.app のアカウント設定項目から‘Unix メールアカウント’というアカウントの種類が消えてしまったようです。再インストールしない限りは、古い‘UNIX’タイプのエントリーが ~/Library/Mail/ に残ってはいますが、無視されます。
再びローカルメールを見られるようにするには、次のようにします:
こうしたメールを読む設定は、ローカル受信ボックスからメールを削除しない限り保たれます。メールを削除してしまうと、Mail は /var/mail/ユーザ名へのリンクを空の mbox ファイルに置き換えてしまいますので、再びローカルメールを受信するにはリンクを張り直さなければなりません。
尤もそのような場合は、‘mbox’が生きたリンクなのか、それとも再度リンクしなおす必要があるのかを確認するスクリプトをスケジュールに沿って実行させるように cron を使えばいいわけですが… :-)
タスクが意図した日時に起動されているかどうか知る方法はありますか?
上記のメールアカウントを設定してスクリプト/プログラムからの出力を確認する、またはスクリプトからテストファイルを touch (“touch /tmp/crontest”)して、このファイルのタイムスタンプを確認する、などの方法があります。
cron の動作を手っ取り早く確認するには、テキストエディットなどのプログラムを CronniX のメインウインドウにドラッグ&ドロップし、1 分後に起動するように設定して様子を見てみましょう。
私の crontab が壊れてしまい CronniX で読み込めなくなってしまいました。どうすればよいでしょう?
ターミナルで次のコマンドを入力してあなたの crontab を見てみましょう:
crontab -l
(アイの大文字ではなくエルの小文字です)
crontab を削除して一からやりなおすには次のようにします:
crontab -r
テキストエディタで編集できるファイルに crontab を保存するには、次を実行します:
crontab -l > ~/my_crontab
これは、あなたのホームディレクトリ内の‘my_crontab’というファイルに crontab を‘パイプ’します。
‘my_crontab’を編集したら(テキストエディットで編集する場合は‘標準テキスト’形式で保存してください。RTF 形式は cron とは仲良くありません)、次のようにしてインストールします:
crontab ~/my_crontab
以上、cron に関するかんたんな解説でした。これでわかったからといって CronniX が捨てられてしまうようなことにならなければ幸いです。