루프 장치
Loop device유닉스 유사 운영체제에서 루프 디바이스, vnd(vnode disk) 또는 lofi(루프 파일 인터페이스)는 컴퓨터 파일을 블록 디바이스로 접근하게 하는 유사 디바이스다.
사용하기 전에 루프 장치를 파일 시스템의 익스텐트 파일에 연결해야 한다.연결은 사용자에게 블록 특수 파일(cf. device file system) 대신 파일을 사용할 수 있는 API(응용프로그램 인터페이스)를 제공한다.따라서, 파일이 전체 파일 시스템을 포함하는 경우, 파일을 디스크 장치처럼 탑재할 수 있다.
이런 종류의 파일은 종종 CD ISO 이미지와 플로피 디스크 이미지에 사용된다.이러한 루프 마운트를 통해 파일 시스템이 포함된 파일을 마운트하면 해당 파일 시스템 내의 파일에 액세스할 수 있다.마운트 지점 디렉터리에 표시됨.
루프 장치는 이 리디렉션 중에 어떤 종류의 데이터 상세화를 허용할 수 있다.예를 들어, 장치는 암호화된 파일의 암호화되지 않은 버전일 수 있다.이 경우 루프 장치와 연결된 파일은 또 다른 유사 장치일 수 있다.이 장치는 암호화된 파일 시스템을 포함할 때 대부분 유용하다.지원되는 경우, 루프 장치는 이 경우에 암호화된 원본 파일의 암호 해독된 버전이기 때문에 일반 파일 시스템인 것처럼 장착할 수 있다.
루프 마운팅 사용
파일 시스템을 저장하는 파일을 탑재한 후, 그 시스템의 파일들은 애플리케이션에서 ISO 이미지에 읽고 쓰는 것과 같은 특별한 기능 없이도 운영 체제의 일반적인 파일 시스템 인터페이스를 통해 접근할 수 있다.
루프 마운팅은 몇 가지 용도가 있다.파일 시스템 이미지를 오프라인으로 관리하고 편집하는 편리한 방법으로, 나중에 정상적인 시스템 운영에 사용된다.여기에는 CD 또는 DVD 이미지 또는 설치 시스템이 포함된다.디스크를 다시 분할하지 않고 파일 시스템에 운영 체제를 설치하는 데 사용할 수 있다.또한 더 빠르고 편리한 하드 디스크에서 이동식 미디어를 시뮬레이션하거나 암호화된 파일 시스템을 캡슐화할 때 데이터를 영구적으로 분리할 수 있다.
유용성
다양한 유닉스 방식의 운영체제는 서로 다른 이름을 사용하는 루프 디바이스 기능을 제공한다.
Linux에서 장치 이름은 해당 장치 드라이버의 기호 테이블 항목으로 인코딩된다.이 장치는 "루프" 장치라고 불리며 장치 노드 이름은 보통 /dev/loop0, /dev/loop1 등이다.정적 장치 디렉토리용 makedev로, 장치 파일 시스템(udev)의 설비에 의해 동적으로, 또는 mknod로 직접 생성할 수 있다.루프 장치의 관리 사용자 인터페이스는 losetup이며, 이는 패키지 util-linux의 일부분이다.
때로는 루프 장치를 루프백 장치라고 잘못 지칭하기도 하지만, 이 용어는 운영체제의 네트워킹 장치용으로 예약되어 있다.루프 장치의 개념은 구별된다.
NetBSD 및 OpenBSD와 같은 BSD 파생 시스템에서 루프 디바이스를 "가상 노드 디바이스" 또는 "vnd"라고 하며 일반적으로 파일 시스템에서 /dev/vnd0, /dev/rvnd0 또는 /dev/svnd0 등에 위치한다.vnconfig 프로그램은 구성에 사용된다.
FreeBSD는 루프 장치가 메모리 디스크 드라이버("md")에 통합되는 릴리스 버전 5까지 다른 BSD 시스템과 동일한 규칙을 따랐다.이제 유틸리티 mdconfig를 사용하여 구성이 수행된다.[1]
Solaris/OpenSolaris에서 루프 장치를 "루프백 파일 인터페이스" 또는 lofi라고 하며 [2]/dev/lofi/1 등에 위치한다.SunOS는 구성 프로그램을 가지고 있다."lofi는 읽기 전용 압축과 읽기-쓰기 암호화를 지원한다. 1988년 여름부터 SunOS/Solaris용 타사 드라이버 fbk(파일 에뮬레이트 Blockdevice)도 이용 가능하다.[3]
유닉스웨어는 동적으로 로드 가능한 장치 드라이버 결혼(7)과 유틸리티 결혼(1M)을 포함한다.[4]결혼 운전자는 일반 파일을 하나의 장치로 취급하는 것을 허용한다.일반 파일은 블록 장치, /dev/marry/regfile 또는 문자 장치, /dev/marry/rregfile을 통해 액세스할 수 있다.명령 결혼은 또한 일반 파일의 암호화와 암호 해독을 지원한다.
MacOS는 RAMD(Random Access Disk Device) 추상화의 일부로 기본 이미지 탑재 메커니즘을 구현한다.hdiutil 명령어 attach -imagekey diskimage-class=CRawDiskImage -nomount <filename>은 블록 장치가 /dev에 일반 디스크 장치로 나타나도록 하고 인식된 파티션에 대한 하위 장치를 발생시킨다.이러한 장치에서 읽고 쓰는 작업은 파일에서 데이터를 읽거나 파일에 쓰는 사용자 모드 도우미 프로세스로 전송된다.사용자 인터페이스에서 디스크 이미지를 열면 자동으로 활성화된다.MacOS는 디스크(.dmg 또는 .iso), CD-ROM 또는 DVD 이미지를 다양한 형식으로 처리할 수 있다.
루프 마운팅은 이 기능이 기본적으로 구현되고 디스크 파트 유틸리티를 통해 제공되는 윈도우즈 7이 될 때까지 마이크로소프트 윈도우즈 운영 체제에서 사용할 수 없었다.[5][6]그러나 이 설비는 데몬 툴이나 알코올 120%와 같은 타사 애플리케이션을 사용하여 추가되는 경우가 많다.VMware(Disk Mount Utility)와 LTR Data(ImDisk)에서 자유롭게 사용할 수 있는 툴을 사용하여 유사한 기능을 달성할 수도 있다.윈도우즈 XP 및 Vista에서는 마이크로소프트 Virtual 서버 2005 R2의 일부 구성 요소를 추가하여 가상 하드 디스크 기능을 사용할 수도 있다.[7]
이전에 AOS 이후 Bluebottle이었던 A2에서는 VirtualDisks로 파일 기반 가상 디스크가 생성된다.생성. VirtualDisks와 같은 "디스크"에 파일 시스템을 설치할 수 있다.설치하다.
예
디스크 이미지가 들어 있는 파일을 디렉토리에 마운트하려면 다음 두 단계가 필요하다.
- 루프 장치 노드와 파일 연결,
- 마운트 지점 디렉터리에 루프 장치 마운트
이 두 가지 작업은 두 개의 별도 명령을 사용하거나 마운트 명령에 대한 특수 플래그를 통해 수행할 수 있다.첫 번째 수술은 Linux의 losetup이나[8] SunOS의 loofaadm과[9] 같은 프로그램에 의해 수행될 수 있다.예를 들면,example.img
파일 시스템을 포함하는 일반 파일이며/home/you/dir
리눅스 사용자의 디렉토리인 superuser(root)는 다음 두 가지 명령을 실행하여 파일을 디렉토리에 마운트할 수 있다.
losetup /dev/filename0 예.img mount /dev/filename0 /home/you/filename
두 번째 명령은 디렉터리에 장치를 마운트함/home/you/dir
. 이 두 명령을 실행하는 전체적인 효과는 파일의 내용이 마운트 지점에 뿌리를 둔 파일 시스템으로 사용된다는 것이다.
위의 명령에 사용할 수 있는 루프 디바이스를 식별하기 위해 superuser(root)는 다음을 사용할 수 있다.
Losetup -f.
마운트 유틸리티는 일반적으로 전체 절차를 처리할 수 있다.
마운트 -o 루프 예제.img /home/you/messages
그런 다음 다음 다음 명령을 사용하여 장치를 마운트 해제할 수 있다.
umount /home/you/dir # 또는 마운트 grep "/home/you/dir" # 또는 losetup -a grep 예.img umount /dev/loop<N>과 같이 관련 루프 번호를 찾은 후
하위 수준 API(응용프로그램 인터페이스)에서는 루프 디바이스에 대한 ioctl 시스템 호출로 루프 디바이스와 파일의 연결 및 연결 해제를 수행한다.
참고 항목
참조
- ^ "mdconfig". freebsd.org.
- ^ "Archived copy". Archived from the original on 2010-12-30. Retrieved 2009-09-28.
{{cite web}}
: CS1 maint: 타이틀로 보관된 사본(링크) - ^ "Schily Tools - Browse /kernel/fbk at SourceForge.net". sourceforge.net.
- ^ "Using marry to create filesystem images on files". uw714doc.sco.com.
- ^ "GES on Windows 7". docs.microsoft.com.
- ^ "Virtual Hard Drive VHD File - Create and Start with at Boot - Windows 7 Help Forums". sevenforums.com.
- ^ "Windows XP/Vista: How to Attach a VHD File". Tech-Recipes: A Cookbook Full of Tech Tutorials. November 12, 2008.
- ^ "UNIX Manual Page: man 8 losetup". misc.cl.cam.ac.uk.
- ^ Lofiadm, Sun System Administration Command 설명서 Wayback Machine에 2009-05-02 보관
외부 링크
- Bochs 사용 설명서에서 루프 장치를 사용하여 디스크 이미지 마운트
- Linux 관리 및 권한 있는 명령 설명서 -