압축 된 하드 드라이브 이미지가 매우 큼


20

방금이 명령을 사용하여 새로 설치된 이중 부팅 (Ubuntu 및 Windows)의 이미지를 만들었습니다 (작은 이미지에는 한동안 사용했습니다).

dd if=/dev/sda | gzip > /mnt/drive.img.gz

이 드라이브에는 500G 중 60G 미만이 사용됩니다. 그럼에도 불구하고 그 이미지 파일은 현재 409G입니다.

방법 것입니다? gzip이 모든 0을 압축하지 않아야합니까? 내가 말했듯이, 새로 설치된 시스템입니다. 어수선 할 수 없었습니다.

이제 파일이 60G가 될 것으로 기대하지 않았지만 400G는 나에게 매우 큰 것 같습니다.


13
... 무슨 제로?
— Monica와의 가벼움 경주

답변:


29

방법 것입니다? gzip이 모든 0을 압축하지 않아야합니까?

예, 만약 그들이 0이라면 .

사용되지 않은 디스크 공간이 0을 포함한다는 의미는 아닙니다. 그것은 사용되지 않으며 무엇이든 포함 할 수 있음을 의미합니다 .

사용하지 않는 디스크 공간을 0으로 지우는 프로그램이 있습니다. 디스크 이미지를 만들기 전에 사용하는 것이 좋습니다. (나는 어떤 렇게을 기억하지 않습니다, 리눅스, 그냥 사용하십시오 dd if=/dev/zero bs=1048576 of=somefile각각의 파일 시스템을 채우고 만 제로가 포함 된 파일을 만들;. 다음 이미지를 만들기 전에 제거 또한, 내가 선호하는 xz이상 gzip.)


고마워, 나는 그것을 설치하기 전에 그 드라이브에 무엇이 있는지 생각조차하지 않았다! 나는 그 이미지를 압축 해제하고 그것을 더 작게 만드는 것이 더 빠르다고 생각합니다 (솔루션도있는 것처럼 보입니다). 또한 xz 사용을 고려할 것입니다. 감사!
— chris137

12
클론을 만들 때마다 400G의 0을 쓰는 것은 SSD에서 좋은 생각이 아닙니다. 다른 솔루션 (파일 시스템 인식 복제 프로그램 사용)이 더 좋아 보입니다.
— Federico Poloni

4
@FedericoPoloni : 아니요. 그러나 생성 된 이미지는 완벽한 원시 디스크 이미지 입니다. 디스크 복제 유틸리티 는 다양한 형식을 사용하므로 이미지를 복원하는 유틸리티가 필요합니다. 이미지에서 사용되지 않은 블록을 0으로 바꾸는 동안 실제로 원시 이미지를 생성 할 수있는 것은 알지 못하지만 확인되지 않았습니다. 정말 유용 할 것입니다. ddLinux에서 사용 하는 것이 원시 이미지 크기 문제를 해결하는 가장 간단하고 쉬운 방법이며 일회성으로 SSD에서도 가능합니다.
— 공칭 동물

1
@FedericoPoloni : 예. gzip 및 xz 압축 이미지 는 nbdkit을 사용하여 마운트 할 수 있습니다 . (형식이 둘 이상의 유틸리티에서 열려 있고 지원되는 경우 실제로 형식에 대해 걱정하지 않습니다. 새 시스템에서 유틸리티가 유지 관리되지 않고 버그가있는 것만 걱정합니다. xz 또는 SquashFS 대신 SquashFS 를 사용하게되어 기쁩니다. gzip, 예를 들어.)
— 명목 동물

3
@Gilles 잘린 공간은 읽을 때 0을 보장하지 않습니다. 어떤 컨트롤러는 그렇게하고 다른 컨트롤러는 그렇지 않습니다.
— deviantfan

14

개별 파티션 백업의 경우 partclone을 대신 사용할 수 있습니다 .

Partclone은 파일 시스템을 읽어 파일이 저장된 위치를 확인하고 파티션의 해당 부분 만 백업합니다.


3
또한 Clonezilla 는이를위한 훌륭한 GUI입니다.
— Federico Poloni

partimage는 훌륭한 도구이며 이미 많은 Linux 배포판 / 라이브 CD에 있습니다.
— Criggie

이 정맥의 또 다른 도구는 fsarchiver입니다.
— Iwillnotexist Idonotexist
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.