외장 하드 드라이브의 img 파일을 열어 보십시오.

외장 하드 드라이브의 img 파일을 열어 보십시오.

여기에 이미지 설명을 입력하세요.Centos 가상 머신에 패키지된 img 파일이 있습니다. 어떻게 여는지 모르겠어요. 이제 다른 컴퓨터에서 "분리"하여 그것이 lvm 구조라는 것을 알았습니다. 이제 문제는 외부 USB 드라이브 내부의 .img 파일에 lvm 부분을 설치하는 방법입니다.

답변1

losetup이미지 파일을 유휴 장치와 연결하는 데 사용됩니다 /dev/loopN.

losetup -P -f /mnt/usb/vdisk1.img

그러면 사용된 실제 루프 장치의 이름이 보고됩니다. 다른 루프 장치가 사용되지 않으면 , 및 으로 이미지 의 파티션에 /dev/loop0액세스할 수 있도록 보고됩니다 . 보고된 루프 장치 이름이 다른 경우 파티션 장치의 이름도 그에 따라 변경됩니다./dev/loop0p1/dev/loop0p2/dev/loop0p3

(다음 예에서는 루프 장치를 이라고 가정합니다 /dev/loop0.)

첫 번째 파티션은 로 표시되어 있으므로 bios_grub파일 시스템이 아닌 원시 내장 BIOS GRUB 코드만 포함할 수 있습니다. 따라서 확인할 필요가 없습니다.

이미지의 두 번째 파티션에 액세스해야 하는 경우 지금 수행할 수 있습니다.

mkdir /mnt/image/partition2
mount /dev/loop0p2 /mnt/image/partition2

세 번째 파티션에 있는 LVM의 경우 먼저 실행하여 vgscanLVM PV가 감지되었는지 확인한 다음 vgchange -ay활성화합니다.

vgscan
vgchange -ay

이러한 명령이 duplicate volume group오류를 보고하는 경우 미러의 VG는 로컬 시스템에서 활성화된 VG와 동일한 이름을 가지며 이름 충돌이 먼저 해결되지 않으면 활성화되지 않습니다. 동일한 이름을 가진 두 개의 VG가 있는 경우 VG의 이름을 바꾸려면 VG UUID가 필요합니다. vgs -o +VG_UUIDVG UUID를 보고 vgrename중복 이름을 바꾸려면 UUID를 사용하여 이름을 바꾸려는 VG를 식별합니다. 그런 다음 실행 vgchange -ay하고 다시 활성화해 보세요.

vgchange -ay오류 없이 실행 하는 경우 lvs이미지의 논리 볼륨 이름 보기를 사용합니다. 이제 mount /dev/<VG>/<LV> <mountpoint>평소대로 설치할 수 있습니다 .


완료되면 이미지 연결을 끊습니다.

  • 먼저 이미지에서 마운트된 모든 파일 시스템을 마운트 해제합니다.
  • 그런 다음 볼륨 그룹을 비활성화하십시오.vgchange -an <VG>
  • 최종 분리 사이클 장비:losetup --detach /dev/loop0

이제 오류 없이 USB 드라이브를 마운트 해제할 수 있습니다 device is busy.

답변2

losetup생성하는 데 사용순환 장치이미지에서

losetup -P -f /mnt/usb/vdisk1.img

미러의 내용을 사용할 수 있습니다 /dev/loopX. LVM 구조가 자동으로 활성화되지 않은 경우 를 사용하여 볼륨 그룹의 이름을 가져오거나 vgsvgscan사용하여 활성화한 vgchange -ay <name>다음 논리 볼륨을 마운트합니다( 를 사용하여 목록을 얻을 수 있음). lvs.mount /dev/<vgname>/<lvname> <mountpoint>

관련 정보