Docker挂载ISO镜像:mount: xxx.iso: failed to setup loop device: No such file or directory

发表于 2022-04-22
阅读 28

介绍

介绍

福哥在学习达梦数据库的时候发现达梦提供的是一个ISO镜像文件,福哥是想把达梦数据库部署到一个docker容器里面,发现在容器里面挂载iso出现了问题,报出了如下的错误:

[root@tongfunet-dm /]# mount -o loop dm7_20211028_x86_rh6_64_ent_7.6.1.112.iso /mnt/
mount: /dm7_20211028_x86_rh6_64_ent_7.6.1.112.iso: failed to setup loop device: No such file or directory

home/topic/2022/0713/14/094ae699b161cae9b393917478911913.png

特权

启动容器的时候必须使用privileged开启特权。

docker run -tid --privileged --name tongfunet-dm -h tongfunet-dm -p 5236:5236 centos:7

内部设备

查看loop设备文件,可以看到没有loop0设备文件。

ls -lh /dev/loop*

home/topic/2022/0713/14/643ad9649b5c52a587d5c00c14a738d6.png

所以我们要创建loop0设备文件。

mknod -m 0660 /dev/loop0 b 7 0

再次测试,可以看到loop0设备文件有了。

home/topic/2022/0713/14/0d159193423c35b27b1782581aa1a684.png

挂载

现在重新挂载iso镜像。

mount -o loop dm7_20211028_x86_rh6_64_ent_7.6.1.112.iso /mnt/

home/topic/2022/0713/14/dd028c980ba21e67c8d91cbf86c3eccd.png