Python

如果更新了依賴項,RPM 是否可以執行腳本?

  • August 2, 2019

我正在考慮編寫一個包含 Python 虛擬環境的 RPM。Python 虛擬環境包含 Python 執行檔的副本(它是 Python 共享庫周圍的薄殼)。這意味著如果 Python 被更新,該虛擬環境中的 Python 執行檔也應該被更新。

RPM 是否有可能在每次更新依賴項時執行一個腳本?我注意到akmod每次更新核心時似乎都知道重新編譯核心模組。它是通過掛鉤 RPM 還是通過某種“啟動”腳本來檢查正在執行的核心?

在 RHEL 和 Fedora 系統上,核心包的特殊之處在於有一個/usr/lib/kernel/install.d/etc/kernel/install.d,其中包含在核心安裝期間和安裝後執行的/usr/lib/kernel/postinst.d腳本/etc/kernel/postinst.d。其他軟體包,例如 akmods 或 dkms 可以將腳本放在適當的目錄中,以呼叫與核心安裝相關的腳本。new-kernel-pkg我相信這都是由命令處理的。

如果您使用的是 RPM 4 或更高版本,您可以在 RPM 規範中定義觸發特定軟體包升級的觸發器。查看 中的文件/usr/share/doc/rpm/triggers

引用自:https://unix.stackexchange.com/questions/533567