작은 데이터만 포함된 매우 큰 파일을 압축하는 방법

작은 데이터만 포함된 매우 큰 파일을 압축하는 방법

250GB SSD를 구입하여 전체 포맷을 실행하고 Win10을 설치하고 다음을 사용하여 전체 디스크를 복제했습니다.ddSSD가 언젠가 고장날 경우를 대비해 백업을 수행하기 위해 Linux 터미널에서 명령을 실행하여 이제 약 크기의 디스크 이미지 파일을 갖게 되었습니다. 250GB는 다음과 같습니다.

| --- some data (approx. 17 GB) --- | ------ no data at all, only nulls ------ |

나는 다음을 사용하여 파일을 압축하기 시작했습니다.지퍼그리고 그걸 예상했지지퍼나한테 줄 만큼 똑똑할 거야.지퍼대략. 크기는 17GB이지만 몇 시간 동안 압축한 후.지퍼이미 50GB를 넘었기 때문에 프로세스를 중단하고 이 작업을 수행할 수 있는 다른 방법이 있는지 묻기 위해 여기에 왔습니다.

답변1

드라이브의 빈 부분에 null만 포함되어 있습니까? 아마도 삭제된 쓰레기가 많이 있을 것입니다. 배포 패키지에 있는 내용은 의심할 바 없이 압축되어 저장되었습니다. 설치를 위해 압축을 푼 후 파일이복사됨대상에 추가한 다음 작업이 완료되면 모든 임시 정크가 삭제되었습니다. 따라서 적어도 설치 크기, 즉 스왑 파일이 차지하는 공간만큼 큰 삭제된 데이터를 찾을 수 있을 것으로 기대합니다.

그 외에도 압축률이 높은 데이터의 경우 매우 나쁜 경우에는 아카이브를 압축하면 더 축소된다는 사실을 발견했습니다. 대부분의 압축기에는 사전 항목의 최대 길이가 있습니다. 파일의 중복성이 이를 크게 초과하는 경우(문제가 생각했던 것과 같은 경우) 압축된 사전 항목에 대한 코드가 실행됩니다. (그리고 방대한 수의 작은 파일이 포함된 아카이브를 압축하면 작은 이점도 보았습니다. 파일은 더 이상 압축되지 않았지만 관리 데이터는 압축되었습니다.)

즉, 여기서 해야 할 일은 파티션을 복사한 다음 복사된 파티션을 가능한 한 작게 축소하고(가능한 경우 스왑 및 최대 절전 모드 파일을 핵으로 설정) 결과에 대해 수행한 작업을 수행하는 것입니다.

답변2

디스크의 빈 공간에는 0만 있거나 완전히 일관된 데이터만 포함되어 있다고 가정할 수 없습니다. 파일을 삭제해도 해당 파일이 차지한 디스크 영역에 0이 자동으로 기록되지는 않습니다. 파일을 삭제하면 해당 데이터에 대한 모든 포인터가 유효하지 않은 것으로 표시되고 해당 공간에 데이터를 기록하는 데 필요한 다른 항목을 기다립니다. 그동안 존재했던 데이터는 기술적으로는 여전히 존재하지만 접근하기가 더 어렵습니다.

또한 새 디스크가 0이 될 것이라고 가정할 수도 없습니다. 데이터가 제조 및 테스트 절차에서 완전히 무작위로 생성된 쓰레기일 수도 있습니다.

이런 방식으로 생성된 디스크 이미지가 반드시 필요한 경우 먼저 해당 빈 공간을 일관된 데이터로 직접 채워야 합니다.

Windows에서는 다음과 같은 도구를 다운로드할 수 있습니다.삭제디스크를 적절하게 0으로 채우는 옵션이 있습니다.sdelete -z

더 큰 디스크에서는 이 작업에 엄청난 시간이 소요되며 디스크 크기에 따라 몇 시간 또는 며칠이 걸릴 수도 있습니다.

더 현명한 옵션은 디스크 형식을 이해하고 실제로 저장해야 하는 데이터만 저장하고 디스크의 "빈" 공간을 무시하는 도구를 사용하는 것입니다.

  • 마크리움 리플렉트
  • 클론질라
  • Acronis Trueimage

이것들은 몇 가지이지만 훨씬 더 많은 디스크 이미징 소프트웨어가 있습니다.

관련 정보