루프 장치는 Linux에서 일반 파일을 블록 장치로 처리하는 기본 방법(아마도 유일한 방법)입니다. 이상하게도 대체 파일은 O_EXCL
플래그로 보호되지 않습니다. 왜 그런 겁니까? 왜 아무도 불평하지 않습니까?
예를 들어, 도구는 wipefs
파일이 설치된 것을 인식하지 못했습니다.
[il@reallin ~]$ touch me
[il@reallin ~]$ truncate -s10G me
[il@reallin ~]$ mkfs.ext3 me
...
Writing superblocks and filesystem accounting information: done
[il@reallin ~]$ sudo mount -oloop me /mnt
[il@reallin ~]$ mount | grep /mnt
/home/il/me on /mnt type ext3 (rw,relatime,data=ordered)
[il@reallin ~]$ wipefs -a /dev/loop0
wipefs: error: /dev/loop0: probing initialization failed: Device or resource busy
[il@reallin ~]$ wipefs -a me
me: 2 bytes were erased at offset 0x00000438 (ext2): 53 ef
[il@reallin ~]$ uname -a
Linux reallin.basin 4.2.4-1-ARCH #1 SMP PREEMPT Fri Oct 23 07:32:38 CEST 2015 x86_64 GNU/Linux
동일한 파일을 여러 번 마운트하려면 losetup
먼저 배타 모드를 시도한 다음 경고를 인쇄하고 이 플래그를 사용하지 않는 것으로 대체해야 합니다.