회로 차단기를 사용하여 전체 디스크 이미지(예: 파티션 테이블이 있는 이미지)에서 파티션을 마운트하는 방법은 무엇입니까?

회로 차단기를 사용하여 전체 디스크 이미지(예: 파티션 테이블이 있는 이미지)에서 파티션을 마운트하는 방법은 무엇입니까?

이는 다소 간접적이지만 "offset" 매개변수를 사용하여 디스크 이미지로 파티션을 마운트할 수 mount있습니다 .losetup

회로 차단기를 사용하여 사용자 공간에서 동일한 작업을 수행할 수 있기를 원합니다.

사용 사례

내 사용 사례는 빌드 작업이 루트 권한을 허용하지 않고 특정 빌드 작업에 대해 서버를 사용자 정의할 필요가 없는 자동화된 빌드 서버에 디스크 이미지를 빌드하는 것입니다.

답변1

퓨즈를 사용하여 수행할 수 있지만 사용자 정의 도구를 사용하는 것이 더 깔끔할 수 있습니다.

해결책

apt-get-able 도구를 사용하면 다음과 같은 혼란이 발생할 수 있습니다.

mkdir mnt
xmount --in dd --out vdi disk.img mnt

mkdir mnt2
vdfuse -f mnt/disk.vdi 

mkdir mnt3
fuseext2 -o "rw" mnt2/Partition1 mnt3

설명하다

기본 아이디어는 회로 차단기를 사용하여 전체 디스크 이미지를 해당 파티션을 가리키는 파일로 분할할 수 있다는 것입니다. vdfuse는 이를 수행할 수 있지만 이는 VirtualBox 도구이며 작동하려면 VDI 또는 VMDK 파일이 필요합니다. xmount는 fusion을 사용하여 원시 디스크 이미지를 VDI 파일로 표시합니다.

마지막으로 vdfuse를 통해 파티션 파일이 제공되면 ext2/3/4 도구 fusionext2를 통해 마운트할 수 있습니다.

추악하지만 사용자 공간에서 완전히 작동합니다.

고쳐 쓰다

vdfuse는 xmount의 도움 없이 raw 이미지를 마운트할 수 있어야 하는데 RAW 옵션을 무시하는 버그가 있습니다.

여기에서 이 오류를 발견하고 수정했습니다.

https://bugs.launchpad.net/ubuntu/+source/virtualbox-ose/+bug/1019075

답변2

가지다이 유틸리티는 일반 사용자가 일치하는 /etc/fstab 항목 없이 이동식 장치를 설치할 수 있도록 하는 표준 설치 프로그램을 둘러싼 래퍼입니다.

plugdev사용자가 이를 사용할 수 있도록 하려면 사용자를 그룹 에 추가하기만 하면 됩니다 .

답변3

  1. losetup그림
  2. kpartx -av결과 루프백 장치
  3. /dev/mapper/...결과 파티션을 실제 디스크인 것처럼 사용

실행 가능한 자동 마운트 맵을 사용하여 이러한 모든 작업을 수행할 수 있습니다.

A는 chdir위의 모든 작업을 실행할 수 있습니다. 또는 sudo를 설치/제거 스크립트로 사용하세요. 또는...

답변4

guestmountlibguestfs에는 이제 가상 머신을 시작하는 명령이 있어 사용자 공간에 임의의 파티션을 마운트할 수 있습니다.

관련 정보