2018.08.23
 

スタートアップ・プログラムを実行しているユーザーについて

Question

スタートアップ・プログラムを編集し、システムの起動時に、新しく作った処理を追加で実行させようとしました。

翌日のシステム起動時に、追加した処理がエラーになってしまいました。 処理を生成したユーザーで実行すると動くので、権限の問題でしょうか。 スタートアップ・プログラムは権限の高いユーザーで実行されているわけではないのでしょうか。

Answer

スタートアップ・プログラムを実行するユーザーは、使用されるジョブ記述によって決まります。

デフォルトの場合、制御サブシステムの自動開始ジョブ項目に、「QSTRUPJD」というジョブが設定されており、そのジョブのジョブ記述は、「QSYS/QSTRUPJD」になります。

このジョブ記述をWRKJOBDで確認していただくと、ユーザープロファイルが「QPGMR」になっていることがわかります。

この状況から、スタートアップ・プログラムはユーザー「QPGMR」によって実行されていることがわかります。

デフォルトではユーザー「QPGMR」は一部の権限しか持っていないため、権限不足によりエラーになったのではないかと推測されます。

原因の特定についてはジョブログ「QEZJOBLOG」で確認する必要がありますが、その結果が権限の問題であった場合は、QPGMRのユーザープロファイルへの権限の付与あるいはSBMJOBで高い権限を持つユーザーを指定するなどの方法で対応をご検討ください。
※ジョブ記述のユーザー名を変更することはお勧めしません。

ページトップ

ボタン