这些过程是否基本相同“ sudo mount -o loop imagefile mntpoint ”与“ sudo losetup /dev/loop2 imagefile ”

这些过程是否基本相同“ sudo mount -o loop imagefile mntpoint ”与“ sudo losetup /dev/loop2 imagefile ”

我正在尝试了解创建挂载点的两种方法之间的区别loop。现在我可以使用以下命令创建它:

  1. sudo mount -o loop /file_to_use /mntpoint, 和

  2. sudo losetup /dev/loop1 /file_to_use然后挂载sudo mount /dev/loop1 /mntpoint

问题:

这两个过程是否与我测试过的一样,并且都产生了这里所示的相同挂载点,但我可能错了?

NAME   FSTYPE LABEL UUID                                 MOUNTPOINT
sda                                                      
├─sda1 ext4         7af461fe-8d2d-4499-a12a-72ff586ff5d6 /boot
├─sda2 swap         44744c25-8797-4cd2-b83e-f129e97efc85 [SWAP]
├─sda3 ext4         3d39068d-96da-4f90-be42-b0921fb7278e /
└─sda4 ext4         643c8738-9823-43cd-b2b2-efe0b81b7611 /home
sr0                                                      
loop0  ext4         ac7deda8-7f3b-4835-8308-e4020ffe5302 /mnt/vfs
loop1  ext4         68a0676b-ad59-4dff-9c50-eca5d972c1c7 /mnt/tempdir

答案1

是的,两者本质上都做同样的事情。请参阅 mount 的手册页: https://linux.die.net/man/8/mount

循环设备

另一种可能的类型是通过循环设备挂载。例如,命令

挂载/tmp/fdimage/mnt -t vfat -o loop=/dev/loop3

将会设置回环设备/dev/loop3对应文件/tmp/fdimage,然后将此设备挂载到/mnt上。

这种类型的挂载知道四个选项,即 loop、offset、sizelimit 和加密,它们实际上是 losetup(8) 的选项。(除了文件系统类型特有的选项外,还可以使用这些选项。)

如果没有提到明确的循环设备(但只给出了选项“-o loop”),那么 mount 将尝试找到一些未使用的循环设备并使用它。

由于 Linux 2.6.25 支持循环设备的自动销毁,因此任何由 mount 分配的循环设备都将通过 /etc/mtab 上的 umount 独立释放。

您还可以使用“losetup -d”或“umount -d”手动释放循环设备。

奖励:sudo mount /file_to_use /mntpoint也可以工作。mount 将自动为您设置循环设备!

相关内容