![创建一个被视为 btrfs 文件系统的文件](https://linux22.com/image/112487/%E5%88%9B%E5%BB%BA%E4%B8%80%E4%B8%AA%E8%A2%AB%E8%A7%86%E4%B8%BA%20btrfs%20%E6%96%87%E4%BB%B6%E7%B3%BB%E7%BB%9F%E7%9A%84%E6%96%87%E4%BB%B6.png)
我想在 btrfs 文件系统上做一些实验,但我不想对现有分区进行任何更改,并且我想完全控制设备大小等内容。
是否可以创建一个文件看起来就像我可以安装和卸载的块设备一样,它会像块设备一样运行,例如空间不足?
答案1
为此,您需要循环设备。以 root 身份运行这些命令:
truncate -s1G 1GB.img # Sparse allocation of a 1GB file
ld=$(losetup --show --find 1GB.img); echo "$ld"
/dev/loop0
您现在将拥有一个可以将其视为块设备的循环设备(例如)。
mkfs -t btrfs "$ld" # Device that was returned from losetup
mkdir -p /mnt/dsk
mount "$ld" /mnt/dsk
完成后,再收拾一下
umount /mnt/dsk
losetup -d "$ld"
rm 1GB.img
如果要在块设备上创建分区表,请确保命令--partscan
中始终包含该标志losetup
。这将创建关联的设备,例如/dev/loop0p1
.