毎日のサーバー・デーモンの起動を手動で行うのは大変ですからスケジュールさせたいものです。
それには次の2つの方法のいずれかを選択してください。
STRENTSVR のスケジュール機能を使用する
STRENTSVR の SBMJOBスケジュール・パラメータで *CURRENT (現在)の代わりに *WEEKLY を指定すると、
月曜日から金曜日までの指定した「開始時刻」にサーバー・デーモンは開始します。
また *ALL に指定するとすべての曜日に開始されます。
QSTRUP にスケジュールする。
IBM i の スタート・アップ QSTRUP の CLP にサーバーの開始を指定します。
QSTRUP は QSYS/QSTRUP として通常は登録されていますので
RTVCLSRC PGM(QSYS/QSTRUP) SRCFILE(QSYS/QCLSRC)
によって QGPL/QCLSRC メンバー QSTRUP として取り出すことができます。
QSTRUPソースの後ろのほうには DONE という名前のタグがありますので、この後ろに
DONE:
STRSBS SBSD(ASNET.COM/ENTPRSSVR)
DLYJOB DLY(60)
ASNET.COM/STRHTPSVR
を追加することで、Alaskaが自動で起動するようになります。
ご参考までにこの後、
CL QSTRUP を再コンパイルすることになるわけですが
QSTRUP のオブジェクトを QSYS に保管することは好ましくありません。
ユーザーの QSTRUP の記述に問題が発生したような場合には復旧の可能性を
残しておかねばならないからです。
よって、
CRTCLPGM QGPL/QSTRUP SRCFILE(QGPL/QCLSRC) AUT(*ALL)
のように QGPLにコンパイルしてから
WRKSYSVAL QSTRUPPGM のライブラリー指定を QGPL に変更するほうが
安全です。
ご注意
-
STRTCP の明示的な開始はやはり必要
QSTRTCP に記述しなくても TCP/IPの開始(STRTCP)は自動開始されますが、
これは QSTRTCP の後に行われます。
よって QSTRUP の中に STRHTPSVR や STRHSTSVR の TCP/IPを
使用するTCP/IPサーバー・デーモンを登録してもその時点ではTCP/IPが
開始されてしないために Socket 作成のエラーとなり、サーバー・デーモンを
開始することができません。 -
QSECURITY = 30 以上での注意
QSTRUP はユーザー・プロフィール QPGMR の元で開始されますが、QPGMR には
*ALLOBJ 権限がありません。
このため サーバー・デーモンが開始できないか、または開始されてもクライアントと
QPGMR以外では接続できないような障害が発生します。このことを避けるためには
CHGUSRPRFコマンドによって QPGMR に *ALLOBJ 特殊権限を
手動によって追加してください。