CentOSでキックスタートを使用してマシンをセットアップしていますが、キックスタート%pre
ファイルの%post
セクションと.cfg
セクションの違いがわかりません。
インストール前スクリプト のCentOSドキュメントには次のように記載されています。
You can add commands to run on the system immediately after the ks.cfg has been parsed.
インストール後のスクリプト のセクションは次のように述べています:
You have the option of adding commands to run on the system once the installation is complete.
この質問 も読んだ後、%pre
セクションが何らかの方法でファイルシステムにアクセスできないようです。
私の質問は:
%pre
セクションと%post
セクションの違いは何ですか?%pre
セクションは、(解析後)キックスタートスクリプトと同時に実行されますか?%pre
セクションで使用できる永続的なストレージはありますか?%pre
セクションは、インストーラーの第2ステージが開始された後、anacondaが残りのキックスタートファイルを評価する前に実行されます。これは、キックスタート設定の%pre
に含めることができる%include /tmp/somefile
でファイルを作成できることを意味します。 %post
は、パッケージのインストールとブートローダーのセットアップが完了した後に実行されます。
RHELのドキュメントでは、%preはキックスタートの解析後に実行されますが、%includeステートメントを使用してキックスタートに追加のコンテンツを動的に作成できます。 https://access.redhat.com/site/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Installation_Guide/s1-kickstart2-preinstallconfig.html
通常、%pre
の書き込み可能な/ tmpディレクトリを使用します。これは、結果のOSに永続的ではありません。それは単なるramdiskです。 %post
は、新しいインストールルートにchrootされて実行されます。または、アナコンダのルート(%post --nochroot
を使用)で実行され、%pre
中に作成/保存したファイルにアクセスできます。