14.8. イメージモードシステムのファクトリーリセットの実行
システムを元の状態に復元し、/var と /etc をコンテナーイメージの状態にリセットし、システムへの変更を元に戻すには、既存の bootc システムの非破壊的なファクトリーリセットを実行できます。ファクトリーリセットを実行すると、システムは完全に初期の状態で再起動します。この状態では、/etc ディレクトリーにはコンテナーイメージからの設定のみが含まれており、/var ディレクトリーは空です。つまり、以前のシステムからのユーザーデータや状態はすべて失われます。
イメージモードシステムのファクトリーリセットは、テクノロジープレビューとして提供されています。テクノロジープレビュー機能は、Red Hat 製品サポートのサービスレベルアグリーメント (SLA) ではサポートされておらず、機能的に完全ではない可能性があるため、Red Hat では実稼働環境での使用を推奨していません。テクノロジープレビュー機能では、最新の製品機能をいち早く提供します。これにより、お客様は開発段階で機能をテストし、フィードバックを提供できます。
Red Hat テクノロジープレビュー機能のサポート範囲の詳細は、Red Hat カスタマーポータルの テクノロジープレビュー機能のサポート範囲 を参照してください。
前提条件
- ブート可能なコンテナーシステムがある。
- コンテナレジストリー内にある、リセット先となるコンテナイメージにアクセスできる。
Anaconda や cloud-init などのツールによって追加されたユーザーが失われる可能性があります。bootc-image-builder ツールや Anaconda などのインストーラーは、イメージの上に状態を追加しますが、その状態は bootc install reset コマンドによって削除されます。
手順
ファクトリーリセットを実行します。目的に応じて、以下のいずれかのコマンドを実行します。
現在実行中のイメージと同じイメージにリセットする場合:
$ sudo bootc install reset --experimentalリセットして別のイメージに切り替える場合:
$ sudo bootc install reset --experimental --target-imgref quay.io/example/myimage:latestリセットしてすぐに再起動する場合:
$ sudo bootc install reset --experimental --applyカスタムカーネル引数を追加する場合:
$ sudo bootc install reset --experimental --karg=console=ttyS0,115200n8ルートファイルシステムのカーネル引数の継承をスキップする場合:
$ sudo bootc install reset --experimental --no-root-kargs新しいデプロイメントを再起動した後でも、
/sysroot/ostree/deploy/<old-stateroot>/内のファイルを調べることで、古いシステムのデータに引き続きアクセスできます。注記ファクトリーリセットを実行して stateroot に再起動した後も、古い stateroot は
/sysroot/ostree/deploy/<old-stateroot>/にディスク上に残ります。必要であれば、以前のシステムからファイルにアクセスできます。詳細は、Cleaning up the old stateroot を参照してください。