1、loop设备
在类 UNIX 系统里,loop 设备是一种伪设备(pseudo-device),或者也可以说是仿真设备。它能使我们像访问块设备一样访问一个文件。在使用之前,一个 loop 设备必须要和一个文件进行连接。这种结合方式给用户提供了一种替代块特殊文件的接口。因此,如果这个文件包含有一个完整的文件系统,那么这个文件就可以像一个磁盘设备一样被mount起来。
对于需要通过loop设备访问的文件类型包括 CD 或 DVD 的 ISO 光盘镜像文件或者是软盘(硬盘)的 *.img 镜像文件。通过这种 loop mount (回环mount)的方式,这些镜像文件就可以被 mount 到当前文件系统的一个目录下。至此,顺便可以再理解一下 loop 之含义:对于第一层文件系统,它直接安装在我们计算机的物理设备之上;而对于这种被 mount 起来的镜像文件(它也包含有文件系统),它是建立在第一层文件系统之上,这样看来,它就像是在第一层文件系统之上再绕了一圈的文件系统,所以称为 loop。
2、两种方式使用loop设备
1) losetup + mount
挂载:
$ losetup /dev/loop1 /home/zhoumin/img/vdisk
$ mount /dev/loop1p1 /mnt/disk
卸载:
$ umount /mnt/disk
$ losetup -d /dev/loop1
2) 直接mount
挂载:
$ mount -o ro,loop centos7.iso /mnt/loop/
卸载:
$ umount /mnt/loop
3、losetup命令
losetup命令用来设置循环设备。循环设备可把文件虚拟成块设备,籍此来模拟整个文件系统,让用户得以将其视为硬盘驱动器,光驱或软驱等设备,并挂入当作目录来使用。
4、mount -o loop
使用 loop 模式用来将一个文件当成硬盘分区挂载到系统中。
参考资料:
1. https://man.linuxde.net/losetup