镜像文件损坏警告的处理
现象
在 EtchDroid 里选择镜像文件后,点击"下一步"或直接开始写入时,EtchDroid 弹出警告——
"镜像文件已损坏" 或 "无法识别的磁盘镜像格式"。
EtchDroid 的镜像验证逻辑
在写入开始前,EtchDroid 会对选中的文件做一个快速头部校验——检查文件的前几个字节是不是有效的 ISO 魔数(ISO-9660 / El Torito)或有效 MBR/GPT 签名。这个校验不会计算文件的 MD5/SHA 哈希,只是快速的"是不是一个合法磁盘镜像"的判断。
常见原因与处理
原因一:下载不完整
镜像文件下载到一半就中断了——EtchDroid 收到的是一个半截文件,头部可能刚好不是完整的 ISO 魔数。
验证方法:在文件管理器里看看文件大小——ISO/IMG 文件大小通常在几百 MB 到几 GB 之间,如果大小明显异常(比如下载了 2 小时结果文件只有 5KB),那一定是下载不完整。
处理:重新下载。
原因二:选了压缩格式
你选的文件其实是 .zip、.xz、.7z 等压缩包,而不是解压后的 .iso 或 .img。EtchDroid 不做自动解压。
处理:先手动解压,再选解压后的文件。
原因三:镜像文件被意外修改
某些下载管理器、网盘、或浏览器扩展会在下载过程中"优化"或修改文件(比如添加额外的校验文件、修改 HTTP 头、或把文件重命名)。
验证方法:对比文件的 MD5/SHA256 哈希值——发行版官网通常会提供。
处理:用另一个下载源重新下载。
原因四:镜像格式 EtchDroid 不认识
以下格式 EtchDroid 不支持,可能报"无法识别格式":
| 格式 | 原因 |
|---|---|
.dmg(Apple) | v1.9 rc1 以后移除支持 |
.vhd / .vhdx(Hyper-V) | 不支持 |
.vdi(VirtualBox) | 不支持 |
.qcow2(QEMU) | 不支持 |
| 2010 年前老旧 Linux 发行版的非混合 ISO | 可以被 EtchDroid 写入,但 BIOS 不认 |
处理:只使用 .iso(现代 Linux 发行版)或 .img(树莓派等嵌入式设备)。
原因五:文件系统权限问题
Android Scoped Storage 可能导致 EtchDroid 读取镜像文件时被截断——虽然文件管理器里显示文件完整,但 EtchDroid 实际读到的是被权限限制截断的版本。
处理:把文件移动到 Download 目录,或者给 EtchDroid 授予"所有文件访问"权限。
验证工具推荐
如果反复遇到镜像损坏警告,花 2 分钟算一下 MD5 是最彻底的排查:
- Android 端:用 MT 文件管理器或类似工具内置的哈希计算功能
- PC 端:Windows 自带
certutil -hashfile filename.iso SHA256或 Linuxsha256sum filename.iso - 发行版官网:几乎每个提供 ISO 下载的发行版都会给出对应的 MD5 或 SHA256 值