linux /dev/loop

来源:互联网 发布:python csv reader 编辑:程序博客网 时间:2024/05/20 02:25

Loopback设备是linux中的一个可以用来像其他媒体设备一样的虚拟设备。
媒体设备的例子像硬盘分区,例如/dev/had1,/dev/had2,dev/sda1,或者像/dev/fd0软
盘分区一样的整个磁盘。这些设备全部都可以用来储存文件以及目录。它们可以被格式
化成需要的文件格式(ext2fs, msdos, ntfs等)然后被mount。
Loopback文件系统就是把一个文件和另外的一个文件系统联系起来,就像一个完整像系
统一样。
它可以被格式化和mount成以上所提到过的文件系统。这样,这些设备就被称为
/dev/loop0或者/dev/loop1,然后和文件产生联系,然后这个虚拟设备被mount。

就是说loop设备是为了把某个文件虚拟成一个磁盘介质设备的一个虚拟设备么?关联之后对loop可以格式化,实际就是对那个文件进行某种操作,能够让这个文件像磁盘一样被mount,并且使用,是这个意思么?


inux下/dev/loop常用于制作文件系统镜像文件rootfs.img,以便下载到内核中挂载;

http://zh.wikipedia.org/wiki//dev/loop

我们日常接触到比较多的镜像文件*.iso,都是用数据文件来存储实际块设备上的数据;

首先必须明确,想光盘,硬盘,软盘这样的设备上存储文件需要特定的文件系统,上面

有大量的文件系统特定信息用于管理上面的文件,这些信息和文件数据一起组成了文件系统

的全部,所以镜像文件就是这些内容的总和。

镜像文件做出来之后,可以放在存储设备上作为一个文件存在,那么如何访问他作为文件系统

所包含的全部文件呢?这就需要把这个镜像文件作为一个块设备来对待。这个时候,/dev/loop

就闪亮登场了。依赖/dev/loop可以把镜像文件在os上作为块设备对待,下面看例子:


首先通过losetup把镜像文件和/dev/loop连接起来。


losetup /dev/loop0 example.img
然后,把loop设备挂载在某一个目录下,这样,该镜像文件的内容就都呈现在该目录下了。

mount /dev/loop0 /home/you/dir

或者是直接用mount来实现:

mount -o loop example.img /home/you/dir


原创粉丝点击