本文目录导读:

Docker 镜像
通过容器导出
# 创建临时容器(不运行) docker create --name temp_container your_image:tag # 复制文件到本地 docker cp temp_container:/path/to/file ./local_file # 清理临时容器 docker rm temp_container
直接导出镜像并解压
# 保存镜像为tar包 docker save -o image.tar your_image:tag # 解压tar包 tar -xvf image.tar # 进入各层目录(每层包含一个json文件和layer.tar) cd [layer_id] tar -xvf layer.tar # 提取该层文件内容
使用 skopeo(跨仓库工具)
# 下载镜像到本地目录(无需Docker守护进程) skopeo copy docker://your_image:tag dir:/path/to/output # 查看输出目录中每一层的manifest.json,并解压blobs/sha256下的文件
ISO 文件
Linux 系统
# 挂载ISO到/mnt目录 sudo mount -o loop your_image.iso /mnt # 复制所需文件 cp /mnt/somefile ./ # 卸载 sudo umount /mnt
macOS 系统
# 挂载ISO hdiutil mount your_image.iso # 文件会出现在 /Volumes/ 下 cp /Volumes/ISO_NAME/somefile ./ # 卸载 hdiutil unmount /Volumes/ISO_NAME
磁盘镜像(RAW、QCOW2、VMDK 等)
使用 qemu-nbd(Linux)
# 加载网络块设备模块 sudo modprobe nbd max_part=8 # 连接镜像到nbd设备 sudo qemu-nbd --connect=/dev/nbd0 your_image.qcow2 # 查看分区 sudo fdisk -l /dev/nbd0 # 挂载分区(如/dev/nbd0p1) sudo mount /dev/nbd0p1 /mnt # 提取文件后卸载 sudo umount /mnt sudo qemu-nbd --disconnect /dev/nbd0
使用 guestfish(跨格式工具)
guestfish -a your_image.qcow2 -i > ls / > download /path/to/file ./local_file > exit
嵌入式文件系统镜像(如 squashfs、UBI)
Squashfs
# 解压(需安装squashfs-tools) unsquashfs -d output_dir your_image.squashfs
UBI 镜像
# 使用 ubireader(Python工具) ubireader_extract_images your_image.ubi
APK/AAB 安装包(Android)
# 解压apk(本质是zip) unzip your_app.apk -d output_dir # 查看classes.dex等文件
注意事项
- 权限问题:某些操作可能需要
sudo或管理员权限。 - 镜像层次:Docker镜像可能包含分层,需要合并所有层才能得到完整文件系统。
- 加密/压缩:部分镜像可能加密或使用特殊压缩格式(如ZFS),需专用工具。
选择方法时,先明确镜像类型和运行环境,如果是Docker镜像,推荐方法一(通过容器提取)最简单直观。
标签: 文件内容
版权声明:NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
足球直播
足球直播
足球直播
足球直播
足球直播
足球直播
足球直播
足球直播
足球直播
足球直播
足球直播
足球直播
足球直播
足球直播
足球直播
足球直播
足球直播
足球直播
英超直播
英超直播
英超直播
英超直播
英超直播
英超直播
英超直播
英超直播
英超直播
英超直播
英超直播
英超直播
英超直播
英超直播
英超直播
英超直播
英超直播
英超直播