スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

crontabのコマンドでJavaアプリケーションが実行されない

前述した「情報発信は自宅から!CentOS低予算自宅サーバ奮闘メモ 定期的に自動実行させるcrontabの設定例」の通りcrontabファイルを設定して、コマンドには任意のJavaアプリケーションを起動させるようにしましたが、起動しませんでした。

ちなみに、cron自体は/var/log/cronで確認すると指定の時間に動いているようです。

ちなみに、Javaのバージョンは以下の通りです。

java version "1.6.0_05"
Java(TM) SE Runtime Environment (build 1.6.0_05-b13)
Java HotSpot(TM) Client VM (build 10.0-b19, mixed mode, sharing)


なぜ、Javaアプリケーションが動いていないか?と判断したのは、そのアプリケーションでログを吐かせるのですが、指定時間になってもまったく動かないからです。

ネットで調査したところによると、これは環境変数が原因だそうです。環境変数とは、envコマンドで表示される変数たちのことですが、cronを実行させるときにも設定ファイルにこの環境変数を記載しないといけないようです。

crontab -eで編集する際、その先頭に環境変数を記載してやります。
その設定例を以下に記載します。

SHELL=/bin/bash
USER=develop
PATH=/usr/kerberos/bin:/usr/local/bin:/bin:/usr/bin:/usr/java/jre1.6.0_05/bin:/home/develop/bin
JAVA_HOME=/usr/java/jre1.6.0_05
LANG=ja_JP.UTF-8
CLASSPATH=.:/usr/java/jre1.6.0_05/lib/tools.jar
0 */3 * * * sh /home/develop/spider/bin/cmd.sh


Javaアプリケーションとして重要なのは、PATH、JAVA_HOME、LANG、CLASSPATHです。この値はenvコマンドで表示させるものと同じであればOKです。
スポンサーサイト

定期的に自動実行させるcrontabの設定例

cron とは、ジョブを自動実行するためのデーモンプロセスです。CentOSの管理を行なう場合、バックアップなど、定期的に自動実行したいジョブが数多くあります。その自動実行を行ってくれるのが、cronです。windowsで言うところの、タスクスケジューラです。

先ず、このcronサービスが稼動しているかどうか、確認してみましょう。
CentOSの画面から[システム] - [管理] - [サービス]でサービスの設定画面を起動させ、crondがチェックされ、稼動中であることを確認します。稼動していなかったら、チェックを付けて開始ボタンを押下しましょう。

サービス管理画面


定期的に自動実行させるには、設定ファイルにその内容を記述してやる必要があります。設定ファイルには、以下の種類があります。

ディレクトリ/ファイル名 用途
/var/spool/cron/(ユーザ名) ユーザの自動タスク設定ファイル
/etc/crontab 毎時、毎日、毎月、毎週の自動タスクのメイン設定ファイル
/etc/cron.hourly 毎時実行される自動タスク設定ファイルを置くディレクトリ
/etc/cron.daily 毎日実行される自動タスク設定ファイルを置くディレクトリ
/etc/cron.monthly 毎月実行される自動タスク設定ファイルを置くディレクトリ
/etc/cron.weekly 毎週実行される自動タスク設定ファイルを置くディレクトリ


ここでは、/var/spool/cron/に置かれる設定ファイルについて説明します。CentOSの場合、デフォルテトでは、/var/spool/cron/配下に何も置かれていません。その為、設定ファイルを作る必要がありますが、次のようなコマンドを使って作ります。

# crontab -e



このコマンドを打つとデフォルトではviが起動し、編集します。
なお、viエディタについては、下記サイトが分かりやすいと思います。

viエディタの使い方

crontab -eを実行すると、CentOSデフォルトでは何も記載されていないので、まっさら状態です。そこに以下のような書式で記述していきます。

分 時 日 月 曜日 コマンド



具体的な設定例は次のページに記載しています。

続きを読む

テーマ : UNIX/Linux
ジャンル : コンピュータ

自宅サーバー部門で一位になりました。

にほんブログ村の自宅サーバ部門でランキング一位になりました!

↓証拠の画像
ランキング一位

これからも奮闘内容を記載していきますので、ヨロシクお願いします!
プロフィール

白鯖

Author:白鯖
安い寄せ集めの部品で構築し、CentOS5をインストールしました。主に、Webサーバ、アプリケーションサーバとして運用中。ハードの知識はあまり無いプログラマですが、全部自前で作るのは、手間はかかるけど、レン鯖より面白いです。

ハードウェア構成

カテゴリー
最近の記事
最近のコメント
最近のトラックバック
月別アーカイブ
Max TDP控え目なCPU
安くて静音なクーラー
検索フォーム
ユーザータグ
RSSフィード
はてな
スポンサード リンク
おすすめ書籍
twitter
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。