= RPM スクリプト = RPM スクリプト(scriptlet) は、SPEC ファイルで記述されている RPM のインストール/削除時に 実行されるスクリプトです。 == スクリプト記述方法 == === 引数 === rpm scriptlet はアップグレードやインストール、削除によって条件分岐をすることができます。 || || インストール || アップグレード || 削除 || || %pretrans || $1 == 0 || $1 == 0 || (なし) || || %pre || $1 == 1 || $1 == 2 || (なし) || || %post || $1 == 1 || $1 == 2 || (なし) || || %preun || (なし) || $1 == 1 || $1 == 0 || || %postun || (なし) || $1 == 1 || $1 == 0 || || %posttrans || $1 == 0 || $1 == 0 || (なし) || == スクリプト実行順序 == 新旧パッケージのスクリプトは以下のような順序で実行されます。 ここではアップグレード時のスクリプトの実行順を例に紹介します。 1. %pretrans (新パッケージ) 2. %pre (新パッケージ) 3. (新パッケージインストール) 4. %post (新パッケージ) 5. %triggerin (他のパッケージ) 6. %triggerin (新パッケージ) 7. %triggerun (旧パッケージ) 8. %triggerun (他のパッケージ) 9. %preun (旧パッケージ) 10. (旧パッケージの削除) 11. %postun (旧パッケージ) 12. %triggerpostun (旧パッケージ) 13. %triggerpostun (他のパッケージ) 14. %posttrans (新パッケージ) なお、このうち %pretrans と %posttrans は rpm のトランザクション外で 実行されます。 == よくある例 == === 共有ライブラリ === インストール後、アンインストール後に ldconfig を実行する。 {{{ %post -p /sbin/ldconfig %postun -p /sbin/ldconfig }}} === フォントパッケージ ===