ext2 파일 시스템 이미지 마운트 및 변경 관리를 위한 내부 메커니즘

ext2 파일 시스템 이미지 마운트 및 변경 관리를 위한 내부 메커니즘

운영 체제 프로젝트의 경우 ext2 파일 시스템 이미지를 생성하고 마운트합니다. 이는 블록 정보가 포함된 1MB 파일을 작성하고 이를 마운트 대상으로 사용한다는 의미입니다.

예를 들어 다음과 같은 파일이 있다고 가정합니다 base.img.

fsck.ext2 base.img # checking my file system 
mkdir mnt
sudo mount -o loop base.img mnt

마운트가 성공한 후 내부적으로 어떤 일이 발생합니까? 내가 이해한 바로는 base.img이미지를 올바르게 초기화하는 것뿐입니다. 내부적으로는 다음과 같은 질문이 있습니다.

  • 현재 이 파일 시스템이 포함된 드라이브 파티션이 존재합니까?
  • 파일 시스템 변경 사항을 관리하는 방법은 무엇입니까?

두 번째 경우에는 "마운트 테이블"이 있고 아마도 ext2Linux는 추가 변경을 위해 모듈을 사용할 것입니다. 이러한 변경 사항이 반영됩니까, base.img아니면 이제 새로운 디스크 파티션이 있습니까?

나의 근본적인 질문은: 특히 다양한 구현과 모호성이 있는 경우 이 모든 것이 어떻게 작동합니까?

답변1

mount -o loop base.img mnt

사용순환 장비블록 장치로 사용할 수 있도록 base.img하고 그 아래에 블록 장치를 장착합니다 mnt. mnt디스크 에 새 파티션이 없습니다 base.img.

ext2 파일 시스템이 포함된 경우 base.img해당 내용은 실제로 다음과 같이 표시됩니다.커널 ext2 드라이버.

관련 정보