2017-02-14 127 views
0

我已經使用AzCopy實用程序將大型zip存檔上傳到Azure存儲BLOB容器,大約9GB。現在我想檢查它是否正確。我可以從Azure Portal獲取文件的「CONTENT-MD5」值。那麼我需要在我身邊計算一下,對吧?是否有其他方法來檢查有效性(下載此文件除外)?它使用7zip實用程序存檔,該實用程序沒有用於MD5的散列算法。如何檢查正確上傳的Azure存儲BLOB文件?

回答

2

「內容-MD5 「上傳blob的屬性不會由Azure存儲Blob服務每個實時Blob內容維護。實際上,AzCopy在上傳過程中會計算它,並在AzCopy完成上傳時設置爲目標blob。因此,如果您確實想驗證數據完整性,則必須使用帶有/ CheckMD5選項的AzCopy下載文件,然後將下載的文件與本地原始文件進行比較。但是,鑑於AzCopy已盡其最大努力在傳輸過程中保護數據完整性,上述驗證步驟可能是多餘的,強烈建議不要使用,除非數據完整性比您的方案中的性能重要得多。

0

從PowerShell中,你可以運行以下命令以獲取文件的MD5哈希

Get-FileHash -Path "C:\temp\somefile.zip" -Algorithm MD5 

如果您使用C#,你也可以使用此代碼段

using (var md5 = System.Security.Cryptography.MD5.Create()) 
{ 
    using (var stream = File.OpenRead(filename)) 
    { 
     return md5.ComputeHash(stream); 
    } 
} 
相關問題