從 debian 的其他版本檢查源包簽名的簡單方法
我正在嘗試
nanomsg
從jessie
to向後移植squeeze
。但是當我執行時:dget http://http.debian.net/debian/pool/main/n/nanomsg/nanomsg_0.4~beta+dfsg-3.dsc
它說:
dscverify: nanomsg_0.4~beta+dfsg-3.dsc failed signature check: gpg: Signature made Fri 29 Aug 2014 09:49:58 PM EEST using RSA key ID 864CC8BF gpg: Can't check signature: public key not found Validation FAILED!!
我看到有人建議通過在和to
debian-keyring
中添加相應的行來從該特定版本進行安裝。但我擔心它會用其他版本的軟體包污染我的系統。sources.list
APT::Default-Release "stable";``apt.conf
如果我們在這裡談論
squeeze
。我裝不stable
進去apt.conf
可以嗎?既然stable
是jessie
現在。如果我放在squeeze
那裡,升級時不要忘記另一件事debian
。如果我可以安全地下載並添加到(或設置?)以使其工作,
debian-keyring
我會喜歡它。是否可以?我應該如何處理這個問題?jessie``keyring /path/to/debian-keyring.gpg``~/.gnupg/gpg.conf
DSCVERIFY_KEYRINGS
您可以從 jessie 輕鬆下載 debian-keyring 軟體包,並使用
dpkg -i debian-keyring*deb
. 但是,該方法的缺點:
- 沒有自動更新
- 沒有gpg驗證
如果你想要這些,你需要使用 apt 來安裝這些包。使用
APT::Default-Release
確實是一種選擇;另一個是易於固定。/etc/apt/preferences.d/99-keyring
使用以下內容創建文件:Package: debian-keyring Pin: release n=jessie Pin-Priority: 600 Package: * Pin: release n=jessie Pin-Priority: 50
這將告訴您的系統您想
debian-keyring
從 jessie 中提取軟體包,但其他所有內容都來自您的正常發行版。如果您不想使用程式碼名稱但想使用符號名稱,請更改Pin: release n=jessie
為Pin: release a=stable
.查看
man apt_preferences
完整的故事,包括如何APT::Default-Release
與這一切聯繫在一起。警告:如果使用不當,apt pinning 可能會導致系統在兩個版本之間升級一半。上面的例子應該是安全的,但不要將它用於特定於架構的包。