Rpm
如何驗證 PGP 密鑰是否已導入 RPM?
可以通過以下方式導入密鑰:
rpm –import /path/to/key
但是你以後怎麼知道你是否已經導入了這個密鑰?嘗試重新導入它會失敗並出現錯誤,我正在嘗試避免這種情況,因為我正在使用 Puppet 安裝密鑰。
您可以使用 . 仔細檢查密鑰是否已導入
rpm -qi gpg-pubkey-<version>-<release>
。如果已安裝,rpm 將為您提供有關它的所有資訊,如果沒有,它將以返回值 1 退出,因此您可以在 puppet 配方中添加一個unless
參數:exec { "rpm --import /path/to/package": # ... unless => "rpm -qi gpg-pubkey-<version>-<release> > /dev/null 2>&1" }
導入的每個密鑰都會添加一個 rpmdb 條目
gpg-pubkey-<left(hex(fingerprint), 8)>-<encoded import date>
。只需在 rpmdb 中檢查該名稱 (gpg-pubkey
) 和適當的版本(密鑰指紋的前 8 個字元,以十六進製表示)。