/dev/loop(或稱vnd (vnode disk)、lofi(循環(huán)文件接口))是一種偽設(shè)備,這種設(shè)備使得文件可以如同塊設(shè)備一般被訪問。
在使用之前,循環(huán)設(shè)備必須與現(xiàn)存文件系統(tǒng)上的文件相關(guān)聯(lián)。這種關(guān)聯(lián)將提供給用戶一個(gè)應(yīng)用程序接口,接口將允許文件視為塊特殊文件(參見設(shè)備文件系統(tǒng))使用。因此,如果文件中包含一個(gè)完整的文件系統(tǒng),那么這個(gè)文件就能如同磁盤設(shè)備一般被掛載。
這種設(shè)備文件經(jīng)常被用于光盤或是磁盤鏡像(IOS、IMG)。通過循環(huán)掛載來掛載包含文件系統(tǒng)的文件,便使處在這個(gè)文件系統(tǒng)中的文件得以被訪問。這些文件將出現(xiàn)在掛載點(diǎn)目錄。
在一個(gè)目錄上掛載包含包含文件系統(tǒng)的文件的步驟:
1. 使用一個(gè)循環(huán)設(shè)備(/dev/loop)連接文件(使用命令 losetup)
2. 在目錄上掛載該循環(huán)設(shè)備(使用命令 mount)
例如:有一個(gè)包含文件系統(tǒng)的文件 sample.img,/mnt/point 為目錄,如果將 sample.img 掛載到 /mnt/point 上可以使用下列命令
losetup /dev/loop0 sample.img
mount /dev/loop0 /mnt/point
# 可以使用一條mount命令替換以上兩條命令
mount -o loop sample.img /mnt/point
# 卸載
umount /mnt/point
# 查看所有與文件相關(guān)聯(lián)的 loop 設(shè)備
# losetup -a
losetup -d /dev/loop0