loop设备简介
概念:熟知,磁盘是一种存储设备,可以存储数据。loop类似于磁盘,也可以存储数据,是一种特殊设备
特点:因此,我们可以将文件/数据或者镜像文件制作成一个loop设备,然后将loop设备挂载,就可以在Linux系统上面使用
如何创建loop设备:如何制作loop设备:文件/数据通过mount命令和-o loop参数即可创建一个loop且同时挂载
一、使用loop设备挂载CD/DVD镜像文件
1.概念
一般来说,我们从一个网站下载了一个Linux或其他所需的镜像文件(.iso)后,该镜像文件一般需要刻录成CD/DVD光盘才能够被系统使用
但是有一种方法,可以不需要将其刻录成为光盘就能够直接使用该镜像中的文件数据。方法就是讲镜像文件制作成一个loop设备来进行挂载
2.方法
方法:使用mount命令,将镜像文件(.iso)制作成一个loop设备,并同时挂载到一个目录下
此时,该挂载目录内的文件数据就是镜像文件内的数据,当然我们也可以对这些数据进行查看与修改
3.命令格式
mount -o loop 镜像文件目录 挂载目录
4.挂载案例
下面我我有一个镜像文件,将其挂载到/data/ubuntu_dvd目录下
第一步:将/tmp/ubuntu-14.04.5-desktop-amd64.iso镜像文件挂载到/data/ubuntu_dvd目录下mount -o loop /tmp/ubuntu-14.04.5-desktop-amd64.iso /data/ubuntu_dvd
第二步:使用df命令查看一下挂载信息
可以看到镜像文件被制作成为一个loop1设备,该设备挂载于/data/ubuntu_dvd目录下
df /data/ubuntu_dvd
第三步:使用ls命令查看/data/ubuntu_dvd目录内的数据(此目录内的数据就是镜像文件内的数据)
可以看到挂载目录内的数据就是我们镜像文件内的数据
二、建立大文件以制作loop设备文件挂载
1.概念
我们可以手动建立一个大文件,然后将这个文件格式化后进行挂载。这样就能够帮助我们解决很多系统的分区不合理的情况,也可以为我们新增一个分区来进行使用,用途十分的广泛
2.方法
方法类似于上面的镜像文件挂载
第一步:建立一个新文件
第二步:并将该新文件格式化。格式化完之后该文件会被制作成为一个loop设备,该loop设备负责存储该新文件内容。两者的UUID完全相同
第三步:将格式化出来的新loop设备挂载到一个目录下进行使用
第四步(选做):将新文件加入/etc/fstab文件中,实现自动挂载
3.具体案例
我们在/srv下建立一个512MB的大文件loopdev,然后将这个大文件格式化并且挂载来使用
第一步:建立大型文件。在/srv目录下使用dd命令(/dev/zero是一个会一直输出0的设备)建立一个loopdev文件,大小为512M
第二步:文件的格式化。将刚才建立的大文件进行格式化,此处我格式化为ext4文件系统格式的
第三步:将格式化好的loopdev进行挂载。我们将/srv/loopdev挂载到/mnt目录下
注意:现在的系统中,不需要-o loop选项与参数也可以进行挂载,不过还是建议加上
第四步:设置自动挂载。将/srv/loopdev添加进/etcfstab文件中
注意:因为上面/dev/loop0在/mnt目录上挂载了,所以需要卸载,然后再使用mount -a重新挂载
nano /etc/fstab /srv/loopdev /data/file ext4 defaults,loop 0 0
umount /mnt
mount -a
从上面可以看到,我们用/srv/loopdev文件制作出一个/dev/loop0设备,并将这个设备挂载到/mnt目录下