ncompress는 파일을 99.99% 비율로 압축할 수 있나요?

ncompress는 파일을 99.99% 비율로 압축할 수 있나요?

이전 버전을 사용하여 ncompress백업 파일을 만들고 있습니다. 내가 본 것은 놀라웠습니다.

[root@centos6 home]# ll -l -b mytest*
-rw-r--r--. 1 root root 1073741824 Mar  8 13:41 mytest.iso
-rw-r--r--. 1 root root      88099 Mar  9 10:26 mytest.iso.bak.Z

이것은 내가 사용하는 명령입니다:

compress -c mytest.iso>mytest.iso.bak.Z

mytest.iso(실제로는 centos6.8-livecd.iso) 크기가 1073741824(1.0G)에서 88099(87K)로 변경되었습니다.

하지만 내가 사용할 때 :

tar -cvf mytest.iso.tar.gz mytest.iso

tar.gz 파일의 크기는 크게 변경되지 않았습니다.

-rw-r--r--. 1 root root 1073745920 Mar  9 10:43 mytest.tar.gz

이게 정상인가요? iso 파일의 압축을 풀면 잘 작동됩니다.

답변1

압축 알고리즘은 압축하는 데이터의 속성에 따라 압축 비율이 다릅니다. 예를 들어:

$ dd if=/dev/zero of=test.img bs=1m count=1024
$ compress -c test.img > test.img.Z
$ gzip -c test.img > test.img.gz
$ wc -c test.img test.img.gz test.img.Z
 1073741824 test.img
    4685486 test.img.gz
      84781 test.img.Z
 1078512091 total

이 알고리즘의 가장 좋은 경우는 아마도 대부분 반복되는 0으로 구성된 파일일 것입니다. 비슷한 압축률을 얻고 파일 크기가 너무 크기 때문에(1GB) 이미지가 필요한 것보다 훨씬 크고 중복 데이터로 채워질 가능성이 높습니다.


물론 , gzip, compressbzip2기타 파일은 모두 특정 파일에 대해 서로 다른 압축 비율을 갖습니다. 이것이 바로 많은 대규모 오픈 소스 프로젝트가 사용자가 압축 해제 유틸리티가 있는 가장 작은 파일을 다운로드할 수 있도록 다양한 알고리즘으로 압축된 여러 다운로드를 제공하는 이유입니다.

관련 정보