歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux綜合 >> 學習Linux >> linux loop device介紹

linux loop device介紹

日期:2017/3/6 9:42:54   编辑:學習Linux

linux loop device介紹


linux loop device介紹


導讀在Linux中,有一種特殊的塊設備叫loop device,這種loop device設備是通過影射操作系統上的正常的文件而形成的虛擬塊設備。因為這種設備的存在,就為我們提供了一種創建一個存在於其他文件中的虛擬文件系統的機制。示例第一步:使用dd命令創建文件
dd if=/dev/zero of=FS_on_file bs=1k count=10000
第二步:使用losetup命令創建一個loop device
losetup /dev/loop0 FS_on_file
第三步:創建一個文件系統
mkfs -t ext3 /dev/loop0
第四步:掛載這個文件系統
(the mount point '/mnt/FS_file0' has been created before by 'mkdir'):mount /dev/loop0 /mnt/FS_file0
第五步:若要刪除剛才創建的這些對象,依次執行如下步驟:
$ umount /dev/loop0$ losetup -d /dev/loop0$ rm FS_on_file
說明

1. 詳細的losetup命令如下

[root@linuxprobe ~]# losetupusage:losetup loop_device # give infolosetup -d loop_device # deletelosetup [ -e encryption ] [ -o offset ] loop_device file # setup

其中加密選項有如下幾種方式:

NONE use no encryption (default).XOR use a simple XOR encryption.DES use DES encryption.DES encryption is only available if the optional DES package has been added to the kernel.DES encryption uses an additional start value that is used to protect passwords against dictionary attacks.

2. 默認情況下系統支持的loop device是8個

[root@linuxprobe ~]# ls -ltr /dev/loop*brw-r----- 1 root disk 7, 0 Jul 19 2009 /dev/loop0brw-r----- 1 root disk 7, 1 Jul 19 2009 /dev/loop1brw-r----- 1 root disk 7, 2 Jul 19 2009 /dev/loop2brw-r----- 1 root disk 7, 3 Jul 19 2009 /dev/loop3brw-r----- 1 root disk 7, 4 Jul 19 2009 /dev/loop4brw-r----- 1 root disk 7, 5 Jul 19 2009 /dev/loop5brw-r----- 1 root disk 7, 6 Jul 19 2009 /dev/loop6brw-r----- 1 root disk 7, 7 Jul 19 2009 /dev/loop7

如果需要超過8個loop device,那麼使用losetup命令的時候可能會遇到類似的錯誤 'no such device',這是因為超過了可用loop device設備的最大限制,依據你的Linux系統,可以通過修改 /etc/modprobe.conf 配置文件,增加如下參數的方式進行擴展

options loop max_loop=20 --比如我增加到20個

如果要馬上生效的話,可以執行以下命令立即加載該模塊。

modprobe -v loop
[root@linuxprobe ~]# cat /etc/modprobe.conf|grep loopoptions loop max_loop=20[root@linuxprobe ~]# modprobe -v loopinsmod /lib/modules/2.6.9-42.0.0.0.1.ELsmp/kernel/drivers/block/loop.ko max_loop=20[root@linuxprobe ~]# ls -ltr /dev/loop*brw-rw---- 1 root disk 7, 8 Jul 19 07:44 /dev/loop8brw-rw---- 1 root disk 7, 9 Jul 19 07:44 /dev/loop9brw-rw---- 1 root disk 7, 10 Jul 19 07:44 /dev/loop10brw-rw---- 1 root disk 7, 11 Jul 19 07:44 /dev/loop11brw-rw---- 1 root disk 7, 12 Jul 19 07:44 /dev/loop12brw-rw---- 1 root disk 7, 13 Jul 19 07:44 /dev/loop13brw-rw---- 1 root disk 7, 14 Jul 19 07:44 /dev/loop14brw-rw---- 1 root disk 7, 15 Jul 19 07:44 /dev/loop15brw-rw---- 1 root disk 7, 16 Jul 19 07:44 /dev/loop16brw-rw---- 1 root disk 7, 17 Jul 19 07:44 /dev/loop17brw-rw---- 1 root disk 7, 18 Jul 19 07:44 /dev/loop18brw-rw---- 1 root disk 7, 19 Jul 19 07:44 /dev/loop19brw-rw---- 1 root disk 7, 0 Jul 19 2009 /dev/loop0brw-rw---- 1 root disk 7, 1 Jul 19 2009 /dev/loop1brw-rw---- 1 root disk 7, 2 Jul 19 2009 /dev/loop2brw-rw---- 1 root disk 7, 3 Jul 19 2009 /dev/loop3brw-rw---- 1 root disk 7, 4 Jul 19 2009 /dev/loop4brw-rw---- 1 root disk 7, 5 Jul 19 2009 /dev/loop5brw-rw---- 1 root disk 7, 6 Jul 19 2009 /dev/loop6brw-rw---- 1 root disk 7, 7 Jul 19 2009 /dev/loop7

有了這個東西,在Linux下就可以借助file來測試學習ASM了。

本文轉載自:http://www.linuxprobe.com/linux-loop-device-introduction/

http://xxxxxx/Linuxjc/1134361.html TechArticle

Copyright © Linux教程網 All Rights Reserved