
Debian Wheezy: Xen 디스크 이미지 분할 및 크기 조정
2022-10-19 last update
6 minutes reading linux debian virtualization배경
내 Xen 가상 서버 중 하나는 주말 동안 400G 디스크를 분할하고 크기를 조정해야 했으며 가동 중지 시간을 최소화하고 싶었습니다. 디스크에는 240G가 사용되었으며 그 중 235G는/backup 디렉토리였으며 나머지 5G는 일반 데비안 Linux 설치 전용이었습니다. 디스크를 Linux 시스템이 포함된 20GB 디스크와/backup으로 마운트할 300G 디스크로 분할하고 싶었습니다. 그런 다음 내 DRBD setup를 적용하여 해당 300G 백업 파티션을 별도의 두 번째 백업 머신에 복제할 수 있습니다.
나는 물리적 호스트에 많은 양의 데이터를 복사해야 하는 상황에 빠지고 싶지 않았으며, 복사하는 동안 가상 머신이 다운되는 것도 원하지 않았습니다.
이미지 설정
가상 머신의 디스크 이미지는/vm/domains/b1/disk.img에 있고 그에 수반되는 swap.img는 걱정할 필요가 없습니다.
문제:
손실 -a
사용된 모든 루프 장치를 찾으려면. 제 경우에는/dev/loop20이 최초의 무료 장치였습니다. 다음으로 이미지에 대한 루프백 장치를 설정한 다음 마운트합니다.
mkdir -p/mnt/loop-copy-from/mnt/loop-copy-to
Lostup/dev/loop20/vm/domains/b1/disk.img
마운트/dev/loop20/mnt/loop-copy-from
새 빈 희소 이미지 만들기
이제/backup을 이동하지 않고 다른 모든 것을 새로운 20G 이미지로 이동합니다. 다음을 사용하여 20G의 희소 이미지 파일을 만듭니다.
dd if=/dev/zero of=/vm/domains/b1/disk-root.img bs=1k count=1 찾기=$(((20*1024*1024)-1))
다음으로 새 루프 장치를 설정하고 파일 시스템을 만들고 마지막으로 이 새 이미지를 마운트해야 합니다.
Lostup/dev/loop21/vm/domains/b1/disk-root.img
mkfs.ext3/dev/loop21
마운트/dev/loop21/mnt/loop-copy-to
루트 파일 시스템 복사
이제 235G 백업 디렉토리를 제외하고/mnt/loop-copy-from에서/mnt/loop-copy-to로 모든 것을 복사하겠습니다.
rsync -arplogu --exclude "/backup"--stats --progress/mnt/loop-copy-from//mnt/loop-copy-to
기존 파일 시스템 정리
백업 디렉토리를 제외한/mnt/loop-copy-from의 모든 것을 제거하고 싶습니다.
cd/mnt/loop-copy-from; 엘 | grep -v '백업' | xargs rm -rf
그런 다음 두 장치를 모두 마운트 해제합니다.
/mnt/loop-copy-from 마운트 해제
마운트 해제/mnt/loop-copy-to
기존 파일 시스템 축소
이제/dev/loop20을 400G에서 300G로 축소해야 합니다.
e2fsck -f/dev/loop20
크기 조정2fs/dev/loop20 300G
부팅 데이터 복사
그런 다음 루프백 장치를 파괴하기 전에 부팅 데이터를 복사합니다.
dd if=/dev/loop20 of=/dev/loop21 bs=1 count=512
손실 -d/dev/loop20
손실 -d/dev/loop21
Xen 구성 및 VM 부팅
이제 Xen VM 구성 파일(내 경우에는/etc/xen/b1.cfg)을 다음과 같이 변경하여 편집합니다.
disk = [ 'file:/vm/domains/b1/disk.img,xvda2,w', 'file:/vm/domains/b1/swap.img,xvda1,w', ]함께:
disk = [ 'file:/vm/domains/b1/disk-root.img,xvda2,w', 'file:/vm/domains/b1/disk.img,xvda3,w', 'file:/vm/domains/b1/swap.img,xvda1,w', ]그리고 마지막으로:
xm 생성 b1.cfg
연결
IO Digital Sec
Debian Wheezy XEN + Guest Setup