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.