基本概念
在类Unix系统中,/dev/loop(或称vnd (vnode disk)、lofi(循环文件接口))是一种伪设备,这种设备使得文件可以如同块设备一般被访问。
在使用之前,循环设备必须与现存文件系统上的文件相关联。这种关联将提供给用户一个应用程序接口,接口将允许文件视为块特殊文件(参见设备文件系统)使用。因此,如果文件中包含一个完整的文件系统,要想访问它,那么这个文件就要如同磁盘设备一般被挂载。
循环设备 与 回环设备
有时,循环设备被错误地认为是回环设备,但是这个术语在Linux内核中是为网络设备保留的。循环设备的概念和回环设备不同,虽然在名字上有相似的地方。
如何使用loop设备
把文件挂载为一个文件系统
- 创建一个可以被用来当做文件系统的文件
使用 linux dd 命令创建一个空文件
目前我们只是创建了一个空的文件,并没有在上面做任何文件系统。 - 创建文件系统
在Linux中,一个文件系统必须是块设备,这样才能被当做文件系统来管理。在Linux中使用loop设备来作为映射的块设备。
我们可以使用losetup -f 来查看第一个未使用的loop设备
也可以使用losetup /dev/loop0 来查看,设备是否已经被使用
找到一个没有被使用的loop设备,将其和创建的文件进行关联
接下来,格式化文件系统(这里使用的ext4文件系统)
- 挂载块设备到指定路径
mount -t ext4 /dev/loop0 /mnt/test_loop_dir
如下所示:
查看 挂载目录,如下所示
卸载
- umount /mnt/test_loop_dir
卸载映射目录 - losetup -d /dev/loop0
取消文件和循环设备的关联