我正在尝试挂载一个将充当读/写 HFS+ 文件系统的文件。我使用的是基于 arch linux 的发行版,所以我安装了 hfsprogs 和 hfsutils。在基于 debian 的发行版中,hfsprogs 应该足够了。
我创建了一个8G的文件,如下:
dd if=/dev/zero of=test.img bs=1024 count=0 seek=$[1000*8000]
然后我做了格式化:
mkfs.hfsplus -v TestImg test.img
此后,当我尝试挂载该文件时,我得到:
mkdir /tmp/sun
sudo mount -t hfsplus -o loop,rw,offset=0 test.img /tmp/sun
mount: /tmp/sun: mount failed: Operation not permitted
Parted 显示偏移正常:
sudo parted -m test.img unit B print
1:0B:8191999999B:8192000000B:hfs+::;
我还尝试使用 fdisk 和文件创建 sun 分区表,但也没有用。您能帮我将 HFS+ rw 文件系统创建为文件吗?
答案1
我不恰当地使用了循环设备。正确的步骤是:创建文件
dd if=/dev/zero of=test.img bs=100MB count=10 seek=$[10*8]
创建映射到该文件的阻止设备:
losetup -fP test.img
此时已创建阻塞设备 /dev/loop0。创建文件系统:
mkfs.hfsplus test.img
安装到您的文件夹
mount -o rw,loop /dev/loop0 /tmp/loop_test