ISO 이미지 파일은 자체 파일 시스템입니까?


45

xxx.iso파일이 블록 장치의 다른 측면 (예 : 파티션 및 파일 시스템)과 의 관계를 이해하려고 합니다.

사람들이 .iso"ISO 마운트"로 액세스하거나 사용 가능 하게 만드는 것은 일반적입니다 .

따라서 다른 방법으로 질문을 드리겠습니다. 만약 내가 또는 일부 소프트웨어가 xxx.iso파일을 USB 장치에 "마운트" 하려면 파일 시스템이있는 기존 파티션 (예 : FAT x 또는 ext X )이 필요합니다 또는 .iso파일이 "마운트 된"상태 인 경우 파일 시스템 (또는 파티션)과 동일 / 유사한 역할을 수행하는 하위 레벨 구성입니까?


15
비고 : 대부분의 경우 "ISO 파일" 이라는 용어 는 광 디스크 미디어 에 대한 ISO 9660 표준 의 파일 시스템을 포함하는 파일을 의미합니다 . dd예를 들어,를 사용하여 CD 또는 DVD-ROM을 복사하여 ISO 파일을 얻을 수 있습니다 .
Dubu

4
USB에 마운트 하시겠습니까? USB 스틱의 마운트 지점 아래에 ISO 내용이 VFS 트리의 일부로 표시되도록 하시겠습니까? 당신은 같은 의미 mount /dev/my_usb_stick /media/usb_stick && mount -o loop,ro foo.iso /media/usb_stick/some_dir입니까? (리눅스의 mount명령은 지원 loop하고자하는 것이 일반적이다 .iso로는 A FS 이미지를 마운트 할 수 있기 때문에, 루프 블록 장치를 설정하는 마운트 옵션을 선택합니다.)
피터 코르

ISO를 마운트 할 때 파일을 블록 장치로 사용하고 있습니다.

답변:


64

ISO 파일 파일 시스템 이 아닙니다 . 파일 시스템 이 포함되어 있습니다 . 사용 관점에서 볼 때 하드 디스크 나 USB 장치 또는 DVD와 같은 방식으로 작동합니다. 즉, 마운트 지점이 있어야합니다. 즉, 파일 시스템에 내용을 가져 오기 위해 마운트 할 수있는 위치가 있어야합니다.


1
고마워, 그렇다면 iso (한 번 마운트 된 상태)는이 경우 블록 장치 나 partiton과 더 유사할까요? -iso가 다시 완전히 다른 것이므로 직접 유추 할 수 없습니까?
the_velour_fog

@the_velour_fog 아주 좋은 비유입니다!
Jenny D

19
파일을 쓸 수없는 이유는 파일이 장치 특수 파일 대신 마운트 된 일반 파일이기 때문이 아니라 파일 시스템 드라이버가 지원하지 않기 때문입니다. 이미지에 ISO9660 대신 FAT32 또는 EXT2와 같은 다른 파일 시스템이 포함 된 경우 읽기 / 쓰기가 가능합니다.
rexkogitans

4
@rexkogitans : ... 또는 UDF , 일명 ISO 13346. 이것은 재기록 가능 CD-R에서 사용되는 파일 형식입니다.
MSalters

1
@hobbs : USB 스틱, HDD 등에도 파티션이 필요하지 않습니다. 파티션없는 블록 장치를 "SuperFloppy"라고도합니다. 파티션을 하나만 배치 할 때 파티션을 나눌 필요가 없습니다. 일부 운영 체제는 단순히 파티션 테이블이있을 것으로 예상하고 블록 장치에서 직접 파일 시스템을 인식하지 못합니다. 예를 들어 포인트 앤 촬영 디지털 카메라의 임베디드 OS는 종종 SD 카드를 SuperFloppy 형식으로 마운트하는 것을 거부합니다.
Jörg W Mittag

42

여기에는 세 가지 개념이 있습니다.

  • 블록 장치 와 동일한 크기의 데이터 블록을 나타내는 일련의 물리적 또는 가상 장치이다. HDD는 블록 장치입니다. 데이터 CD도 마찬가지입니다.
  • 파일 시스템 파일 및 디렉토리 등의 파일 시스템 정보의 계열을 나타내는 블록 디바이스에 데이터를 저장하는 방법을 정의한다. ext3은 ISO9660과 마찬가지로 파일 시스템입니다.
  • 이미지 파일 (다른 파일 시스템) 파일의 형태로 블록 장치의 데이터의 사본이다. 이미지 파일은 확장명을 가질 수 있습니다. .img일반적이다.

.iso파일은 보통 인 이미지 파일 (A)의 블록 장치 함유 ISO9660 파일 시스템 . CD에 저장된 데이터의 정확한 표현이 들어 있습니다. 마찬가지로 ext3 파일 시스템을 포함하는 블록 장치이미지 파일.img파일 ( .ext3원하는 경우 호출)을 가질 수 있습니다 . 부팅 가능한 USB 또는 플로피 이미지를 배포하는 일반적인 방법입니다. 이름은 임의적이며, ISO9660 파일 시스템 (또는 경우에 따라 더 현대적인 UDF 파일 시스템)을 포함하는 이미지 파일이라고합니다..iso

이미지 파일은 블록 장치가 아니라 블록 장치에있는 데이터의 복사본이므로 이미지 파일을 직접 마운트 할 수 없습니다. 그러나 Linux 및 기타 OS에는 이미지 파일을 블록 장치로 액세스 할 수있는 루프 장치 라는 기능 이 있습니다. ISO 파일을 마운트하려면 먼저 ISO 파일과 내용이 동일한 가상 블록 장치를 나타내는 루프 장치를 만듭니다. 그런 다음 실제 CD처럼 또는 ext3 파일 시스템이 포함 된 USB 드라이브 또는 기타 다른 방식으로 마운트 할 수 있습니다. mount명령은 자동으로이 작업을 수행 할 수 있지만, 후드 아래 그들은 서로 다른 단계입니다.

파티션은 블록 장치를 여러 개의 작은 논리 블록 장치로 분리하는 방법입니다. 파티션은 선택 사항입니다. CD는 이와 관련하여 파티션되지 않은 USB 드라이브 또는 플로피 디스크와 유사하며 파일 시스템은 파티션 테이블없이 전체 장치에 저장됩니다. 따라서 ISO 파일에는 파티션 테이블이 없습니다. HDD 파티션에 ISO9660 파일 시스템을 만드는 것을 막을 수있는 것은 없습니다. 당신이 때 파티션이 이미지 파일은 단일 파티션 또는 파티션 테이블을 포함하는 전체 물리적 장치의 수 있지만 구분이 ISO 이미지에 대한 무관하므로 CD는, 분할되지 않습니다.

포함 된 파일에 액세스하기 위해 장치 또는 이미지 파일을 마운트 하지 않아도 됩니다. 일부 응용 프로그램 및 라이브러리에는 운영 체제를 사용하지 않고도 데이터에 직접 액세스 할 수 있습니다. 그들은 단순히 파일 시스템을 직접 이해하고, 파일 시스템의 파일에 액세스 할 때 OS가하는 것과 유사한 코드를 가지고 있습니다. 이것이 OS를 통해 실제로 마운트하지 않고 ISO 파일의 내용을 보여줄 수있는 툴이 존재하는 이유입니다. 마운팅은 운영 체제 개념이지만 블록 장치의 데이터에 액세스하는 유일한 방법은 아닙니다. 어떤 사람들은 이런 방식으로 "마운팅"을하는 단순한 행동을 고려할 수도 있습니다.

장치 (또는 루프백 장치를 통해 ISO 파일)를 마운트하는 것은 관련이 없습니다. 그것은 경로 계층에서 OS가 장치의 내용을 보여달라고 요청하는 곳입니다. Linux에서는 일반적으로 이미 마운트 된 파일 시스템에서 디렉토리를 선택합니다. 그러나 CD로 부팅하고 커널에게 루트 파일 시스템으로 마운트하도록 요청하는 것을 막을 수있는 것은 아무것도 없습니다. 물론 ISO 파일은 파일이기 때문에 파일 시스템부터 시작하기 때문에 아마도 ISO에 액세스하려면 어딘가에 마운트해야합니다.


11

아니요, ISO 이미지 파일은 그 자체로는 파일 시스템이 아닙니다. 파티션 이 파일 시스템을 포함 할 수 있지만 파일 시스템은 아니지만 ISO 이미지 파일에는 파일 시스템이 포함되지만 파일 시스템은 아닙니다.

그러나 두 가지를위한 파일 시스템이 필요합니다.

  • .iso 파일을 저장할 장소 (빛나는 은색 디스크로 제공되지 않는 경우)
  • 마운트 할 디렉토리 /mnt/isotmp

그 후 경로가 아래 /mnt/isotmp에있는 것으로 해석 되면 ISO 이미지 파일 시스템의 코드는 해결, 열기 등을 수행합니다.


좋은, 당신은 설명했습니다 배열은 하드 디스크가 장착되는 방식, 즉 a를 가진 유사하다 block device/partition/filesystem/장착 /some/directory. 그렇다면 iso가 기본적으로 파일 시스템의 기능을 수행한다고 가정합니까?
the_velour_fog

나는 그것을 넣지 않을 것입니다. ISO 파일에는 파일 시스템이 포함되어 있습니다. 파티션에 파일 시스템이있는 것처럼. 파티션 파일 시스템 이라고 말하지 않을 것입니다. (
Anthon

이것은 "PNG 파일에는 그림이 포함되어 있지만 그림이 아닙니다", 즉 어리 석고 쓸모없는 구별과 다른 점은 무엇입니까?
Nick Matteo

@the_velour_fog : iso가 기본적으로 블록 장치의 기능을 수행한다고 말하는 것이 더 정확합니다.
TMN
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.