実行環境

89. スタートアップの忘れてはいけない注意点とは

毎日のスケジュールにサーバー開始ジョブなどを CL : QSTRUP に入れておいて
毎朝、起動させる、という手法は良く知られているが、2つの注意点がある。
意外と忘れてしまっていることもあるので、ここで改めて確認の意味で QSTRUP を使う上での注意点を挙げておく。

QSTRUP の実行時点では TCP/IPサーバーは、起動していない。

QSTRUP が起動される時点では、まだ TCP/IPサーバーは起動されていない。
従って TCP/IP を利用する適用業務サーバーを、何もせずに起動を記述したのでは
実行することができずにエラーとなってしまう。
TCP/IP 適用業務を開始する直前に次のようにして TCP/IP を開始しておくことが必要である。

  QSYS/STRTCP
  MONMSG MSGID(CPF0000)
  DLYJOB DLY(60)

QSTRUP はユーザー: QPGMR として起動される。

これが意外と落とし穴で忘れてしまうことが多い。
IBM はなぜ QSTRUP をユーザー QPGMR で起動するようにしたのか不明であるが
ユーザー : QPGMR *PGMR クラスであり、特殊権限は全く保有していない。
このことがまた QSTRUP の中で実行するために必要な権限の不足となる場合が多い。

対策は、

ユーザー : QPGMR に特殊権限 *ALLOBJ を与える

ことである。

OS V5R4M0 〜は QPGMR *ALLOBJ 権限は導入時の省略値としては、
除去されてしまっているので CHGUSRPRF コマンドによって *ALLOBJ 権限を付与する必要がある。

さらに、何らかの事情によって i5/OS を再導入(スリップ・インストール) すると
QPGMR の権限は元の状態に戻ってしまうので、注意して再確認する必要があるだろう。