You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何验证SD卡dd镜像文件的分段MD5校验值?

嘿,这事儿不难,咱们用系统自带的工具就能搞定分段MD5校验,不用额外装软件。我分Linux/macOS和Windows两种情况给你说具体操作:

Linux/macOS 下的校验方法

打开终端,定位到镜像文件所在目录,然后针对每个分段执行对应的命令:

完整1GB分段的校验

每个完整1GB分段可以用dd截取对应部分后计算MD5,规律是:

  • 起始字节为N * 1073741824的分段,skip参数填N(表示跳过N个1GB块)
  • count=1表示只取1个1GB块

举几个例子:

  • 第一个分段(0 - 1073741824):
    dd if=your_image.dd bs=1073741824 count=1 skip=0 | md5sum
    
    输出的前32位字符就是该分段的MD5,对比给定的ba2b47b7daa8e17f06d654fd4b65ebe0即可。
  • 第二个分段(1073741824 - 2147483648):
    dd if=your_image.dd bs=1073741824 count=1 skip=1 | md5sum
    
    对应校验值cfa0a3db105c939db30506cd320f7e6c。
  • 后续完整分段以此类推,比如起始字节为10737418240的分段,skip=10即可。

最后一个不足1GB的分段

最后一段(15032385536 - 15931539456)长度为15931539456 - 15032385536 = 899153920字节,用以下命令截取并计算:

dd if=your_image.dd bs=1 skip=15032385536 count=899153920 | md5sum

计算结果对比给定的dbde266ea52d67cb3c125cf418161e29。

Windows 下的校验方法

推荐用PowerShell来实现,操作更灵活:

  1. 打开PowerShell,定位到镜像文件所在目录。
  2. 复制以下脚本,把$imagePath改成你的镜像文件实际路径,然后运行:
    # 设置镜像文件路径
    $imagePath = "C:\Users\YourName\Downloads\sd_image.dd"
    $blockSize = 1073741824 # 1GB对应的字节数
    
    # 自定义函数:计算指定字节范围的MD5
    function Get-SegmentMD5 {
        param(
            [string]$FilePath,
            [long]$StartOffset,
            [long]$SegmentLength
        )
        $reader = [System.IO.File]::OpenRead($FilePath)
        $reader.Seek($StartOffset, [System.IO.SeekOrigin]::Begin) | Out-Null
        $buffer = New-Object byte[] $SegmentLength
        $reader.Read($buffer, 0, $SegmentLength) | Out-Null
        $hash = [System.Security.Cryptography.MD5]::Create().ComputeHash($buffer)
        $reader.Close()
        return [BitConverter]::ToString($hash).Replace("-", "").ToLower()
    }
    
    # 逐一校验所有分段
    Write-Host "0 - 1073741824: $(Get-SegmentMD5 -FilePath $imagePath -StartOffset 0 -SegmentLength $blockSize)"
    Write-Host "1073741824 - 2147483648: $(Get-SegmentMD5 -FilePath $imagePath -StartOffset $blockSize -SegmentLength $blockSize)"
    Write-Host "2147483648 - 3221225472: $(Get-SegmentMD5 -FilePath $imagePath -StartOffset ($blockSize*2) -SegmentLength $blockSize)"
    Write-Host "3221225472 - 4294967296: $(Get-SegmentMD5 -FilePath $imagePath -StartOffset ($blockSize*3) -SegmentLength $blockSize)"
    Write-Host "4294967296 - 5368709120: $(Get-SegmentMD5 -FilePath $imagePath -StartOffset ($blockSize*4) -SegmentLength $blockSize)"
    Write-Host "5368709120 - 6442450944: $(Get-SegmentMD5 -FilePath $imagePath -StartOffset ($blockSize*5) -SegmentLength $blockSize)"
    Write-Host "6442450944 - 7516192768: $(Get-SegmentMD5 -FilePath $imagePath -StartOffset ($blockSize*6) -SegmentLength $blockSize)"
    Write-Host "7516192768 - 8589934592: $(Get-SegmentMD5 -FilePath $imagePath -StartOffset ($blockSize*7) -SegmentLength $blockSize)"
    Write-Host "8589934592 - 9663676416: $(Get-SegmentMD5 -FilePath $imagePath -StartOffset ($blockSize*8) -SegmentLength $blockSize)"
    Write-Host "9663676416 - 10737418240: $(Get-SegmentMD5 -FilePath $imagePath -StartOffset ($blockSize*9) -SegmentLength $blockSize)"
    Write-Host "10737418240 - 11811160064: $(Get-SegmentMD5 -FilePath $imagePath -StartOffset ($blockSize*10) -SegmentLength $blockSize)"
    Write-Host "11811160064 - 12884901888: $(Get-SegmentMD5 -FilePath $imagePath -StartOffset ($blockSize*11) -SegmentLength $blockSize)"
    Write-Host "12884901888 - 13958643712: $(Get-SegmentMD5 -FilePath $imagePath -StartOffset ($blockSize*12) -SegmentLength $blockSize)"
    Write-Host "13958643712 - 15032385536: $(Get-SegmentMD5 -FilePath $imagePath -StartOffset ($blockSize*13) -SegmentLength $blockSize)"
    # 最后一个分段
    $lastStart = 15032385536
    $lastLength = 15931539456 - $lastStart
    Write-Host "$lastStart - 15931539456: $(Get-SegmentMD5 -FilePath $imagePath -StartOffset $lastStart -SegmentLength $lastLength)"
    
  3. 运行后,把输出的每个哈希值和你收到的分段MD5逐一对比即可。

如果所有计算出的哈希都和给定值一致,说明镜像的每个分段都是完整无损的。

内容的提问来源于stack exchange,提问作者Program

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.27 06:47:54