Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

28.7. インストール後のスクリプト

インストール完了後にシステム上で実行するコマンドを追加するオプションが あります。このセクションはキックスタートファイルの最後にあり、ここでは %post コマンドで開始する必要があります。このセクションは 追加のソフトウェアをインストールしたり、追加のネームサーバを設定するなどの 作業に役に立ちます。

注記

ネームサーバを含み、ネットワークを静的 IP 情報で設定した場合は、 ネットワークにアクセスして、%post セクション内で IP アドレスを解決できます。ネットワークを DHCP 用に設定した場合は、 インストールが %post セクションを実行する時点では、 /etc/resolv.conf ファイルが完了していませんので ネットワークにアクセスできますが、IP アドレスは解決できません。その為、 DHCP を使用する場合も、%post セクションに IP アドレスを 指定する必要があります。

注記

インストール後のスクリプトはchroot環境で実行されることに注意してください。したがって、インストール媒体からスクリプトやRPMをコピーするなどの作業を実行することはできません。
--nochroot
これを指定すると、chroot環境の外で実行したいコマンド を指定することができます。
以下の例では、ファイル /etc/resolv.conf をインストールされた ばかりのファイルシステムにコピーします。
%post --nochroot cp /etc/resolv.conf /mnt/sysimage/etc/resolv.conf
--interpreter /usr/bin/python
Pythonなどの異なるスクリプト言語を指定できます。 /usr/bin/python を目的の スクリプト言語に入れ換えます。

28.7.1. スクリプトの例

Red Hat Network Satellite にシステムを登録して下さい:
%post
( # Note that in this example we run the entire %post section as a subshell for logging.
wget -O- http://proxy-or-sat.example.com/pub/bootstrap_script | /bin/bash
/usr/sbin/rhnreg_ks --activationkey=<activationkey>
# End the subshell and capture any output to a post-install log file.
) 1>/root/post_install.log 2>&1
NFS 共有から runme と言う名のスクリプトを実行します:
mkdir /mnt/temp 
mount -o nolock 10.10.0.2:/usr/new-machines /mnt/temp open -s -w -- 
/mnt/temp/runme 
umount /mnt/temp

注記

NFS ファイルロッキングは、キックスタートモード内にある時、サポートがありません。 その為、NFS マウントをマウントしている場合には、-o nolock が必要となります。