Gentoo
“Whirlpool size ;-)”是什麼意思?
通常在安裝或升級軟體包時,日誌中會出現以下內容:
* ....tar.gz SHA256 SHA512 WHIRLPOOL 大小 ;-) ...
這是什麼意思,表情符號意味著什麼?;-)
當包維護者創建一個包的版本時,該
repoman
工具會獲取輸入文件,通常是帶有原始碼和 ebuild 本身的 tar 存檔,並在其上計算一些雜湊值。然後將這些資訊記錄在一個包Manifest
文件中。在 portage 解包和編譯包之前,它會驗證所有這些雜湊是準確的。
例如,如果您查看
/usr/portage/app-editors/vim/Manifest
,您將看到該包的文件列表以及雜湊列表。你看到的檢查是 portage 已經驗證了雜湊是正確的,然後它將繼續解包/編譯/安裝。
您看到的具體列表
SHA256 SHA512 WHIRLPOOL size
告訴您,portage 成功驗證了雜湊值 SHA256、SHA512、WHIRLPOOL,以及文件大小。為什麼裡面有笑臉,我真的不知道。
要測試上述內容並查看檢查失敗,只需對 e-build 進行任何小的更改,然後嘗試安裝它。
例如,在撰寫本文時更改目前 vim 版本中的單個字母,我得到:
# emerge -vp vim These are the packages that would be merged, in order: Calculating dependencies / * Digest verification failed: * /usr/portage/app-editors/vim/vim-7.4.273.ebuild * Reason: Failed on SHA256 verification * Got: 376375965ab5830f176e9825e1f69b98f88d14331db5527317308b201befa933 * Expected: cbc64bcd5136f7c6059e379634e75117062204075001cf861d18a589c6f8535d