Debian
multistrap 配置中的“noauth”屬性到底是什麼意思?
來自https://manpages.debian.org/wheezy/multistrap/multistrap.1:
–no-auth - 允許使用未經身份驗證的儲存庫。與 noauth=true 相同
我從這個定義中了解到的是
multistrap
不會嘗試進行身份驗證,因此可能會安裝不安全的軟體。但是似乎並非如此:設置
noauth=true
引發以下錯誤:Get:1 http://ftp.uk.debian.org/debian buster InRelease [122 kB] Err:1 http://ftp.uk.debian.org/debian buster InRelease The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 04EE7237B7D453EC NO_PUBKEY 648ACFD622F3D138 NO_PUBKEY DCC9EFBF77E11517 Reading package lists... Done W: GPG error: http://ftp.uk.debian.org/debian buster InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 04EE7237B7D453EC NO_PUBKEY 648ACFD622F3D138 NO_PUBKEY DCC9EFBF77E11517 E: The repository 'http://ftp.uk.debian.org/debian buster InRelease' is not signed. N: Updating from such a repository can't be done securely, and is therefore disabled by default. N: See apt-secure(8) manpage for repository creation and user configuration details. apt update failed. Exit value: 100
有趣的是,設置
noauth=false
解決了這個問題。究竟是什麼
noauth
原因造成的?
你的理解是正確的。但是,multistrap 中存在一個錯誤,因此它無法正確配置 apt 以安裝未經身份驗證的軟體包。debian 錯誤報告 #908451 ( https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=908451 ) 中提供了問題的描述和修復它的更新檔。
有關 noauth=false 的更多資訊(即進行身份驗證):
- 密鑰環包需要可安裝在主機系統上。在呼叫 multistrap 之前相應地配置主機的 /etc/apt/sources 和 apt-key。
- 密鑰環 debian 軟體包需要將密鑰安裝到 /usr/share/keyrings/ 中,multistrap 將從那裡將它們複製到 /etc/apt/trusted.gpg.d/,它們實際上由 apt-key 使用。僅將其密鑰安裝到 /etc/apt/trusted.gpg.d/ 的密鑰環包不能被 multistrap 使用。
- 僅指定每個密鑰環包一次,即使相同的密鑰環適用於多個儲存庫。否則,Multistrap 會導致錯誤並顯示無用的錯誤消息,至少在修復 debian 錯誤 #870166 之前是這樣。