我在安装一些我自己没有创建的 .img 文件时遇到了一些困难(我可以很好地安装我自己创建的那些文件)。
这是 parted 针对某个特定文件显示的内容:
(parted) print
Model: (file)
Disk /dir/home/name/directory/imageFile: 16.0GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Number Start End Size Type File system Flags
1 1049kB 16.0GB 16.0GB primary ext3 boot
因此,我执行了以下命令:
sudo mount -o loop,offset=$((1049000*512)) -t auto imageFile mountTest/
但后来我得到:
mount: you must specify the filesystem type
我在这里做错了什么?
答案1
在parted
您提供的输出中,大小不是以扇区为单位,而是以字节为单位。这意味着您不会乘以 512。此外,由于大小(与我之前所说的相反)显然不是以二进制字节为单位,而且也是四舍五入的,因此它们不适合您的要求。这里有两个选项:
- 使用合适的工具(
fdisk
)。它默认以扇区为单位显示大小。 - 使用不同的
unit
,parted
即字节(b
)
无论哪种方式,您最终都会得到偏移量 1048576 (1 MiB)。
因此你可以使用
mount -o loop,offset=1048576 image target