Tips記事
» 2000年07月01日 00時00分 UPDATE

定期的にプログラムを動かしたい

[ITmedia]

 Linuxにはcronと呼ばれるデーモン(常駐プログラム)がある。cronを利用すれば,日時を自由に指定してプログラムを動かすことができる。繰り返し定期的に動かすといったことも可能なため,バックアップなどの用途でも応用できる。

 ここでは,例えばマスタサーバがスレーブサーバにデータベースを定期的に転送することを想定しよう。cronはcrontabコマンドでスケジュール設定ファイルを編集することが可能だ。まずは,rootにログインしてから次のようにコマンド指定すればよい。

 次のコマンド書式は,[分] [時] [日] [月] [曜日] [スクリプト]の順番に並んでいる。「*」はワイルドカードを示し,毎時0分に実行したい場合は,「0 * * * *」となる。

# crontab -e 0 15 * * * / usr / etc / yp / ypxfr1perday
0 3,15 * * * / usr / etc / yp / ypxfr2perday
0 * * * * / usr / etc / yp / ypxfr1perhour

 「-e」オプションは編集モードを意味する。応用例として,次のように指定すればntpdateコマンド使い,毎時58分にタイムサーバ(clock.nc.fukuoka-u.ac.jp)へ問い合わせを行って時間修正が可能だ。

58 * * * * /usr/local/bin/ntpdate -q clock.nc.fukuoka-u.ac.jp

 例として,毎週日曜と木曜日の午前2時に,/etc/cron.d/logを実行するという書式は次のようになる。

0 2 * * 0,4 /etc/cron.d/log

Copyright © ITmedia, Inc. All Rights Reserved.

注目のテーマ