文件系统镜像资源管理器
ESP-IDF:浏览文件系统镜像 命令用于检查为 ESP-IDF 项目生成的分区二进制文件(.bin)。它可以检测镜像是 SPIFFS、FAT、LittleFS 还是 NVS,并以只读树形结构显示其中的内容。
如何打开
在资源管理器中右键单击
.bin文件,选择ESP-IDF:浏览文件系统镜像。在命令面板中运行
ESP-IDF:浏览文件系统镜像,然后选择二进制文件。在 设备分区资源管理器 中选择
data分区,然后选择 浏览文件系统。如果磁盘上还没有partitionsFromDevice/<name>.bin,扩展会从设备读取该分区。如果该文件已存在,请选择 再次从设备读取 或 使用缓存的二进制文件。刷新文件系统镜像 会重新解析已打开的文件,不会读取芯片。
文件系统镜像资源管理器 视图(ESP-IDF 资源管理器侧边栏)会列出目录和文件及其大小。NVS 是键值存储,不是目录文件系统:命名空间显示为文件夹,键显示为叶子节点,并带有类型和简短的值预览。标题栏上的 清除文件系统镜像 按钮会从视图中移除该树,不会删除二进制文件。
检测与列出
检测依据磁盘上的实际数据结构,而不是搜索字符串,因此仅引用文件系统的应用程序二进制文件会被识别为未知类型。如果设备分区资源管理器中的子类型(例如 spiffs 或 nvs)与检测结果不一致,将采用检测结果,并在树的根节点显示警告。
NVS:由扩展解析。命名空间、键、类型以及标量或字符串值均从页面条目表中读取。加密的 NVS 镜像在没有密钥的情况下无法列出。
FAT:通过 ESP-IDF 的
components/fatfs/fatfsparse.py列出(包括磨损均衡检测)。请配置 ESP-IDF,确保该脚本可用。该工具生成的卷标文件夹会被折叠,因此树从分区根目录开始。LittleFS:从超级块和元数据对中读取,选取每个元数据对的最新版本,并递归进入子目录。
SPIFFS:先通过每个块的魔数恢复几何参数,再由对象索引头提供名称和大小。
树中显示名称和大小。只有在保存文件时才会复制文件内容,详见 保存文件。已格式化但没有文件的镜像会显示空树;无法识别或无法读取的镜像会在根节点显示错误,而不会显示虚假的目录树。
保存文件
树是二进制文件的视图。保存会从镜像中复制一个文件,不会修改二进制文件本身。目录没有保存操作。
可以通过以下任一方式运行 ESP-IDF:将文件保存到工作区:
在 文件系统镜像资源管理器 中右键单击文件,然后选择该命令。
单击该行上的下载图标。
该命令需要已打开的工作区文件夹。打开多个文件夹时,使用当前选定的 ESP-IDF 项目文件夹。
文件写入路径为:
<workspace>/filesFromImage/<image name without extension>/<path inside the image>
例如,storage.bin 中的 example.txt 会保存为 filesFromImage/storage/example.txt。嵌套路径(例如 /www/index.html)会保持嵌套:filesFromImage/storage/www/index.html。需要时会创建父文件夹。如果该路径已存在,扩展会在替换前询问。通知中包含 打开。
SPIFFS 和 LittleFS:从镜像中读取文件字节。LittleFS 使用内联文件数据或 CTZ 块。
FAT:使用与列出相同的
fatfsparse.py路径提取文件,因此需要已配置的 ESP-IDF 环境。NVS:键会保存为文件。字符串和数字以文本写入;blob 以原始字节写入。
无法识别镜像时
当二进制文件不是文件系统时,资源管理器会指出它的实际类型,而不是仅报告失败:
应用程序或引导加载程序镜像:
build/<project>.bin是应用程序,而不是数据分区。对于名为spiffs的项目,build/spiffs.bin是应用程序镜像,无法浏览。分区表二进制文件:
build/partition_table/partition-table.bin描述的是 flash 布局,而不是文件系统内容。请使用 设备分区资源管理器 查看布局。ELF 文件 或 已擦除的分区 (所有字节均为
0xFF,表示尚未写入文件系统)。
只有当项目主动请求时,构建过程才会生成文件系统镜像,例如在 CMakeLists.txt 中调用 spiffs_create_partition_image、littlefs_create_partition_image 或 fatfs_create_spiflash_image。这类镜像会以分区名写入构建目录,通常为 build/storage.bin。
如果应用程序在设备上运行时创建或格式化文件系统(例如使用 format_if_mount_failed 挂载 SPIFFS),则主机上不存在镜像文件。此时请打开 设备分区资源管理器,选择数据分区,然后选择 浏览文件系统。当 partitionsFromDevice/<name>.bin 不存在时,扩展会从设备读取该分区;当该文件已存在时,会询问 再次从设备读取 或 使用缓存的二进制文件。
请按照 安装 ESP-IDF 和工具 文档完成扩展配置。FAT 列出功能尤其需要已配置的 ESP-IDF 环境。