循环设备是将文件模拟为块设备的伪设备,用于挂载ISO、磁盘镜像等;通过mount -o loop或losetup关联文件与loop设备,挂载后可像硬件设备一样访问;使用后需umount并losetup -d释放,避免资源占用;常用于镜像测试、加密容器、根文件系统构建等场景。

在Linux中处理循环设备挂载,主要是通过将普通文件模拟成块设备来实现,常用于挂载ISO镜像、磁盘映像或创建加密容器。整个过程依赖losetup和mount命令,操作灵活但需注意权限与资源释放。
什么是循环设备?
循环设备(loop device)是一种伪设备,允许将一个文件当作块设备使用。例如,一个ISO文件可以通过循环设备挂载为只读光盘,系统会将其视为真实硬件设备处理。
Linux内核默认支持多个循环设备(如/dev/loop0到/dev/loop7),必要时可动态分配。
挂载镜像文件的步骤
以挂载一个ISO镜像为例,说明基本流程:
- 准备一个镜像文件,比如
system.iso - 使用
mount -o loop直接挂载: sudo mount -o loop system.iso /mnt/iso - 访问内容:
ls /mnt/iso
这个方法最简单,系统自动分配可用的循环设备。
若需手动控制循环设备,可使用losetup:
- 关联文件与循环设备: sudo losetup -fP system.img
-
-f查找第一个空闲loop设备,-P表示同步分区表 - 查看分配结果:
losetup -a - 如果镜像是分区镜像,现在可以挂载某个分区: sudo mount /dev/loop0p1 /mnt/img
卸载与清理
完成使用后,必须正确卸载以避免资源占用或数据损坏。
- 先卸载文件系统: sudo umount /mnt/iso
- 解除循环设备关联: sudo losetup -d /dev/loop0
- 或根据文件名解绑: sudo losetup -d $(losetup -j system.img | cut -f1 -d:)
忘记解除绑定可能导致后续挂载失败或设备占用。
常见应用场景
循环设备不仅用于ISO,还可支持多种用途:
- 测试磁盘镜像:开发或备份时常生成raw或img文件,用loop挂载可检查内容
- 构建根文件系统:嵌入式开发中,将文件作为ext4镜像挂载进行修改
-
加密容器:配合
cryptsetup,把一个文件作为LUKS加密卷使用 - 快照与备份:结合稀疏文件和loop设备,节省空间并便于管理
基本上就这些。只要理解了文件与设备的映射关系,循环设备就是一个轻量且强大的工具。关键是在使用后及时释放,避免系统资源浪费。










