AS400 / IBM i の保守では、SAVLIBやSAVOBJで退避したものを、RSTLIBやRSTOBJで戻す場面があります。保存系コマンドは「もしものための準備」ですが、復元系コマンドは実際に環境へ戻す操作です。ここを間違えると、既存オブジェクトやデータに影響する可能性があります。
この記事では、RSTLIB、RSTOBJ、SAVFからの復元で初心者が確認すべきポイントを、現場目線で整理します。結論から言うと、慣れるまではいきなり本番ライブラリへ戻さず、まず承認された検証環境で、対象の種類に対応した復元先へ戻して確認します。QTEMPを指定するだけでは本番から隔離されません。
リストア手順は、研修で一度そろえておくと強い
復元コマンドは、コマンド名を知っているだけでは安全に扱えません。どのライブラリを戻すのか、既存オブジェクトを置き換えるのか、業務停止中に実行するのか、権限やバックアップ世代をどう確認するのかまで、現場ルールとセットで判断する必要があります。
復元系コマンドで一番怖いのは復元先を間違えること
保存系コマンドは、対象を間違えると「必要なものが保存されていない」という事故になります。一方で復元系コマンドは、戻す場所を間違えると既存オブジェクトや既存データに影響します。こちらの方が怖いです。
特に本番環境で、意図しないライブラリへ復元したり、既存オブジェクトを上書きしたりすると、何が起こるか読み切れません。販売管理システムのように、受注、出荷、売上、請求、在庫などがつながっている環境では、復元先の確認ミスが大きな業務影響につながる可能性があります。
現場メモ: 復元先がQTEMPでも、同じシステムの容量やCPUを使います。復元したプログラムを実行すると、本番ライブラリのデータや外部連携へ作用する可能性もあります。復元と実行を分け、容量・権限・オブジェクト間の依存関係を確認してください。
RSTLIBとは
RSTLIBは、SAVLIBで保管したライブラリを復元するためのコマンドです。ライブラリ単位で保存したものを戻す時に使います。
RSTLIB SAVLIB(TESTLIB) DEV(*SAVF) SAVF(BKUPLIB/TESTLIBSAV) RSTLIB(QTEMP)
上は復元元と復元先の指定を読むための構文例であり、そのまま実行する手順ではありません。対象オブジェクトの復元制約、既存物との衝突、空き容量、必要な権限を確認し、承認された検証環境で使います。ライブラリ名だけを変えて本番上で試さないでください。
RSTLIBで確認すること
- どのSAVFから戻すのか
- 保存されている元ライブラリ名は何か
- 復元先ライブラリはどこか
- 既存ライブラリや既存オブジェクトと衝突しないか
- 本番ライブラリへ直接戻していないか
RSTOBJとは
RSTOBJは、保存したオブジェクトを個別に復元するコマンドです。SAVOBJだけでなく、SAVLIBで保管したライブラリ内のオブジェクトも対象にできます。ライブラリ丸ごとではなく、プログラム、ファイル、コマンドなど、必要なオブジェクト単位で戻す時に使います。
RSTOBJ OBJ(TEST001R TESTFILE) SAVLIB(TESTLIB) DEV(*SAVF) SAVF(BKUPLIB/TESTSAV) RSTLIB(QTEMP)
RSTOBJでも、見るべきポイントはRSTLIBと同じです。どのSAVFから、どのオブジェクトを、どこへ戻すのかを確認します。特にプログラムや物理ファイルを戻す時は、既存オブジェクトとの関係を必ず確認します。
RSTOBJで危ない場面
| 確認不足 | 起こりうる問題 |
|---|---|
| 復元先ライブラリを間違える | 意図しない環境へオブジェクトが戻る |
| 既存オブジェクトの有無を見ない | 上書きや衝突のリスクがある |
| 権限や所有者を確認しない | 復元後に実行できない、参照できない可能性がある |
| ライブラリリストを確認しない | 想定と違うオブジェクトを参照する可能性がある |
SAVFから復元する流れ
SAVFは、AS400 / IBM i の保管用ファイルです。イメージとしては、複数のオブジェクトを1つの保管ファイルにまとめているものです。別マシンに復元する場合は、SAVFを転送してからRSTLIBやRSTOBJで復元する流れになります。
- 復元対象のSAVFを確認する
- 必要に応じてSAVFを別マシンへFTP転送する
- DSPSAVFなどでSAVFの中身を確認する
- 承認された検証環境と復元先で確認する
- 復元されたオブジェクト、属性、権限、所有者を確認する
- 本番へ反映する必要がある場合は、手順書とレビューを通してから実施する
保存しただけで安心しないのと同じで、復元できることも確認が必要です。SAVFの中身を5番表示やDSPSAVFで確認し、必要なら検証用ライブラリへ戻して、中身が想定通りか確認します。
本番に直接戻さない
復元系コマンドで初心者に強く言いたいのは、本番ライブラリへいきなり戻さないことです。練習は承認された検証環境で行い、QTEMPや別ライブラリを指定しただけで本番への影響がなくなるとは考えません。
QTEMPはジョブ単位の一時ライブラリです。確認用に一時的に戻して中身を見る用途では使いやすいです。ただし、ジョブが終われば消える性質があるため、恒久的に残す目的では使いません。確認用として使う、という位置づけです。
既存オブジェクト上書きの注意
復元は、手順を知っているかどうかより、戻してよいかを判断できるかで結果が変わります。その判断に必要な材料をそろえる手順を扱うのがAS400保守担当者向けの研修です。
復元時に怖いのは、既存オブジェクトへの影響です。プログラムなら古いものに戻ってしまう可能性があります。ファイルならデータや定義に影響する可能性があります。特に本番DBを含むライブラリに対して、安易に復元するのは危険です。
復元先に同名オブジェクトがある場合は、上書きの有無、置き換え条件、復元後の権限、所有者、実行環境を確認します。ここを見ずに作業すると、復元は成功してもアプリケーションが動かない、別のプログラムを参照する、権限不足でエラーになる、といった問題が起きます。
権限・所有者・ライブラリリストの注意
復元したオブジェクトは、戻しただけで終わりではありません。権限、所有者、ライブラリリストとの関係も確認します。AS400では、同じ名前のオブジェクトが複数ライブラリに存在することがあります。ライブラリリストの上位にあるオブジェクトが参照されるため、復元した場所と実行時に参照される場所が一致しているかが重要です。
| 確認項目 | 見る理由 |
|---|---|
| 復元先ライブラリ | 意図した場所へ戻っているか確認する |
| 同名オブジェクト | 既存オブジェクトへの影響を確認する |
| 所有者 | 復元後の運用・実行に影響することがある |
| 権限 | プログラム実行やファイル参照ができるか確認する |
| ライブラリリスト | 実行時にどのオブジェクトを参照するか確認する |
データリカバリー時に復元する前の確認
データリカバリーで復元を使う場合は、作業前の確認が特に重要です。戻す対象がプログラムなのか、ファイルなのか、データなのかで影響範囲が変わります。販売管理システムでは、入力系データが後続処理の元ネタになるため、安易な復元は二次被害につながります。
- 何を戻すのか
- どの時点のSAVFから戻すのか
- 復元先はどこか
- 既存データや既存オブジェクトに影響しないか
- 復元後にどの処理を確認するのか
- 作業手順はメンバーにレビューされているか
復元前に確認したい現場向けチェック
AS400の復元作業は、コマンドを実行できるかだけでなく、どの環境へ戻すのか、既存オブジェクトを置き換えるのか、権限や所有者が変わらないかを事前に確認することが重要です。特に本番環境では、復元対象、復元先ライブラリ、停止時間、戻し手順を作業前にそろえておきます。
| 確認項目 | 見る内容 | 注意点 |
|---|---|---|
| 復元対象 | ライブラリ、オブジェクト、IFS、スプールなど | 対象外まで戻さないようにする |
| 復元先 | 本番、検証、別ライブラリ | 検証復元で内容を確認してから本番へ進む |
| 権限 | 所有者、権限、採用権限 | 復元後に実行できない事故を防ぐ |
| 切り戻し | 復元前バックアップと戻し手順 | リリース・切り戻しチェックと合わせて確認する |
復元手順を社内で共有するときは、コマンド例だけでなく、作業前確認、実行中の確認、復元後の動作確認まで分けて残しておくと、担当者が変わっても判断しやすくなります。
Codexで手順を点検する
Codexには、匿名化した保存対象、復元先、確認項目だけを渡すと、SAVF移送のチェックリストを整えやすくなります。実サーバー名やファイル名、顧客情報は入れず、実行判断は人が行います。
SAVFは「転送できた」だけでは復元確認にならない
SAVFをFTPで送った時、ファイルが存在しているだけで安心すると危険です。転送モード、サイズ、保存元ライブラリ、保存オブジェクト、復元先ライブラリが合っているかを見ます。私は、復元前にDSPSAVFで中身を確認し、復元後にオブジェクト数と変更日を見比べるようにしています。
| 転送前 | 保存元、SAVF名、保存日時を確認する |
| 転送後 | サイズ、バイナリ転送、破損の有無を見る |
| 復元前 | DSPSAVFでライブラリとオブジェクトを確認する |
| 復元後 | DSPOBJDやWRKOBJで復元結果を確認する |
復元コマンドの安全確認の要点
RSTLIBやRSTOBJは、SAVLIBやSAVOBJで保管したものを戻すための重要なコマンドです。ただし、復元は環境へ実際に戻す操作なので、保存よりも事故につながりやすい面があります。
初心者がまず守るべきことは、復元先を確認すること、本番へ直接戻さないこと、承認された検証環境で復元内容と依存関係を確認することです。保存したから安心ではなく、戻せること、戻した後に想定通り使えることまで確認して、はじめて安全な復元作業になります。
保存系コマンドの注意点は、AS400の保存系コマンドの注意点で整理しています。データリカバリー全体の考え方は、AS400データ復旧もあわせて確認してください。
RSTLIB/RSTOBJの画面例
復元系コマンドでは、復元先を間違えると既存オブジェクトやデータを壊す危険があります。まず承認された検証環境で復元内容を確かめ、本番作業の範囲を決めます。QTEMPはジョブ単位の一時ライブラリであり、安全性を保証する隔離環境ではありません。
復元作業を本番環境で行う前は、対象ライブラリ、復元先、バックアップ、利用者影響を必ず確認します。環境確認の観点は AS400本番対応チェックリスト も合わせて見てください。
関連: SAVFの中身を確認してから復元判断をしたい場合は、DSPSAVFでSAVFの中身を確認するポイント で、保存日時、保存元、対象オブジェクト、復元先、容量影響を確認してください。
復元前にバックアップ証跡まで戻って確認する
復元作業では、RSTLIB/RSTOBJの指定だけでなく、元になるバックアップがいつ取得され、どのライブラリ・オブジェクトを含み、どの環境向けだったかを確認します。SAVFなら DSPSAVF、日常の確認観点は バックアップ確認チェックリスト、障害時の優先順位は 本番障害の初動対応 も合わせて確認してください。
復元コマンドとジャーナル復旧を分けて考える
RSTLIBやRSTOBJは、保存済みのライブラリやオブジェクトを戻すための復元系コマンドです。一方で、障害発生時に更新履歴を追い、更新前後を確認する時は、DSPJRNやジャーナルレシーバーの確認が必要になる場合があります。復元コマンドで戻す話と、ジャーナルで更新履歴を追う話を混同しないことが大切です。
- オブジェクトやライブラリを保存時点へ戻すなら、RSTLIBやRSTOBJの復元先を確認する
- 誤更新や途中更新を追うなら、DSPJRNで更新前・更新後を確認する
- 本番データを戻す場合は、帳票、EDI、締め、会計連携まで確認する
ジャーナルを使った戻し判断は、AS400ジャーナル確認手順 にまとめています。復元系コマンドの記事では、まず「何をどこへ戻すのか」を安全に確認することを優先します。
復元作業は、戻す前の確認を研修化する
RSTLIB、RSTOBJ、RSTは、戻す場所と対象を間違えると既存環境へ影響します。法人向けCodex研修では、検証用ライブラリでの確認、復元先、帳票や外部連携への影響まで含めて、戻す前に見る項目を整理します。
本番へ戻す前に、作業判断を分ける
復元系コマンドは、コマンド入力そのものよりも「どの状態に戻すのか」「誰の承認で実行するのか」「戻した後に何を確認するのか」を分けておくことが重要です。特に本番環境では、復元対象を間違えると、障害復旧ではなく別の障害を作ってしまうことがあります。
| 判断すること | 確認する内容 | 関連する確認 |
|---|---|---|
| 復元対象 | ライブラリ全体、特定オブジェクト、SAVF、IFSのどれを戻すのかを分けます。 | GO SAVE / Option 21確認 |
| 復元先 | 本番へ直接戻すのか、検証用ライブラリへ戻して中身を確認するのかを決めます。 | AS400ライブラリの確認方法|仕組みとオブジェクト管理を初心者向けに解説 |
| 上書き | 既存オブジェクト、データ、所有者、権限、ジャーナル状態が変わらないかを見ます。 | オブジェクト権限確認 |
| 復元後 | ジョブログ、件数、帳票、後続バッチ、利用者影響を確認します。 | CPFエラーとジョブログ確認 |
| 教育・引き継ぎ | 若手が実行してよい確認と、責任者判断に回す操作を分けます。 | AS400 / IBM i 現場向けCodex実戦研修 |
現場では、復元前のチェック表を作っていても、実際の障害時に「急いでいるから」と省略されがちです。研修や引き継ぎでは、RSTLIBやRSTOBJの構文だけでなく、復元先の確認、作業前後の証跡、判断を止める条件までセットで扱うと事故を減らしやすくなります。
