공유 드라이브를 호스팅하는 원격 Linux 시스템의 모든 드라이브를 사용하여 디스크 이미지 파일을 생성하려고 합니다 dd
. 실행하면 df -h --total
여러 파티션이 표시됩니다. 몇 가지 질문이 있습니다.
- 아래 파란색 파일은 추가 파티션인가요?
- [파일] -> [파일] 구문이 무슨 뜻인가요?
- 를 사용하여 모든 파티션에 대한 단일 디스크 이미지를 생성할 수 있습니까
dd
? 그렇다면 어떻게 해야 할까요?
dm-[] 파일에 대한 세부정보는 다음과 같습니다.
컨텍스트: 이 CentOS 머신을 Hyper-V 가상 머신으로 변환하려고 합니다. 명령 으로 생성된 .img 파일을 .vmdk(VBoxManage.exe 사용)로 변환 한 다음 .vhd(다시 VBoxManage.exe 사용)로 변환하여 dd
단일 파티션 Linux 시스템을 성공적으로 변환했습니다 . 문제없이 Hyper-V에서 시작됩니다. Linux 시스템을 Hyper-V로 P2V하는 방법에 대한 통찰력도 크게 높이 평가됩니다.
답변1
현재 3파티션 Linux SD 카드 이미지에 사용하고 있습니다. 나는 당신이 그것을 자신의 상황에 맞게 번역할 수 있다고 생각합니다.
export VERSION=3.4.113
export ARMBIAN_BUILD=~/Armbian/build-$VERSION
dd if=/dev/zero of=sd.img bs=1M count=256
# Do the bootloader thing. Put the file from position 8192 bytes into the image
echo Copying bootloader
sudo dd if=ext/u-boot.bin of=sd.img bs=1k seek=8 conv=notrunc
(
echo n
echo p
echo 1
echo
echo +50M
echo n
echo p
echo 2
echo
echo +150M
echo n
echo p
echo
echo
echo
echo t
echo 1
echo b
echo t
echo 3
echo b
echo a
echo 1
echo w
) | fdisk sd.img > /dev/null
sleep 1
export start0=`echo p | sudo fdisk sd.img | grep sd.img1 | awk ' { print $3 } '`
export end0=`echo p | sudo fdisk sd.img | grep sd.img1 | awk ' { print $4 } '`
export start1=`echo p | sudo fdisk sd.img | grep sd.img2 | awk ' { print $2 } '`
export end1=`echo p | sudo fdisk sd.img | grep sd.img2 | awk ' { print $3 } '`
export start2=`echo p | sudo fdisk sd.img | grep sd.img3 | awk ' { print $2 } '`
export end2=`echo p | sudo fdisk sd.img | grep sd.img3 | awk ' { print $3 } '`
mkdir -p mnt
mkdir -p mnt/boot
mkdir -p mnt/rootfs
mkdir -p mnt/media
echo Creating boot partition from $start0 to $end0
export sectors0=`expr $end0 - $start0`
export size0=`expr $sectors0 \* 512`
export offset0=`expr $start0 \* 512`
sudo losetup -d /dev/loop0 > /dev/null 2>&1
sudo losetup /dev/loop0 sd.img -o $offset0 --sizelimit $size0
sudo mkfs.vfat /dev/loop0
sudo mount /dev/loop0 mnt/boot
echo Creating rootfs partition from $start0 to $end0
export sectors1=`expr $end1 - $start1`
export size1=`expr $sectors1 \* 512`
export offset1=`expr $start1 \* 512`
sudo losetup -d /dev/loop1 > /dev/null 2>&1
sudo losetup /dev/loop1 sd.img -o $offset1 --sizelimit $size1
sudo mkfs.ext2 /dev/loop1
sudo mount /dev/loop1 mnt/rootfs
echo Creating media partition from $start0 to $end0
sudo losetup -d /dev/loop2 > /dev/null 2>&1
export sectors2=`expr $end2 - $start2`
export size2=`expr $sectors2 \* 512`
export offset2=`expr $start2 \* 512`
sudo losetup /dev/loop2 sd.img -o $offset2 --sizelimit $size2
sudo mkfs.vfat /dev/loop2
sudo mount /dev/loop2 mnt/media