내 디스크 이미지가 왜 그렇게 큰지 알아내려고 노력 중입니다. 원본 서버의 디스크는 다음과 같습니다.
root # df -h
Filesystem Size Used Avail Use% Mounted on
udev 1.9G 0 1.9G 0% /dev
tmpfs 395M 7.1M 388M 2% /run
/dev/sda 79G 43G 32G 58% /
tmpfs 2.0G 0 2.0G 0% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 2.0G 0 2.0G 0% /sys/fs/cgroup
tmpfs 395M 0 395M 0% /run/user/0
나는 그것을 만들고 있습니다 :
ssh [email protected] "dd if=/dev/sda " | dd of=/backup/server-images/west.img
여전히 실행 중이며 현재까지 이미지 크기는 72GB입니다. 이는 백업 디스크 실제 크기의 거의 두 배입니다. 내가 무엇을 놓치고 있나요? 200GB 디스크가 있으면 400GB 이상이 되나요?
그러나 이미지는
답변1
매개변수 없이 사용하는 것은 dd
매우 비효율적입니다. 각 읽기는 512바이트 블록을 사용합니다. dd
블록 크기( bs=32M
예:) 를 조정할 수 있지만 여기에는 더 쉽고 더 나은 방법이 있습니다.더 빠른 대안
# Compressed image
ssh [email protected] "gzip --rsyncable </dev/sda" >/backup/server-images/west.img.gz
# Uncompressed image
ssh [email protected] "gzip --rsyncable </dev/sda" | zcat >/backup/server-images/west.img
# Uncompressed image with seriously fast network
ssh [email protected] "cat /dev/sda" >/backup/server-images/west.img
플래그를 이해하지 못하거나 나중에 압축된 이미지를 전송하는 데 사용되지 않을 것이라고 확신할 수 있는 경우 에는 이 플래그를 무시하세요 dd
.--rsyncable
gzip
rsync
그런데 /dev/sda
파일 시스템이 마운트되거나 파티션이 사용 중인 경우 백업이 손상될 수 있습니다. 이는 라이브 시스템의 블록 기반 백업을 수행하는 방법이 아닙니다.
답변2
일반적인 - 방금 발견한 내용은 다음과 같습니다.
https://askubuntu.com/questions/537012/dd-image-size-does-it-equal-the-size-of-the-partition
따라서 이는 이 .img 파일이 현재 사용 중인 공간의 크기가 아니라 실제로 디스크 자체의 크기라는 것을 의미한다고 생각합니다.