NTFS 압축 폴더 : 압축 비율을 조정할 수 있습니까?


19

Windows는 압축률이 가장 낮은 NTFS 압축 폴더를 압축합니다. 속도를 높이고 CPU로드를 줄이는 데 유용 할 수 있지만 드물게 액세스되는 파일 (백업 폴더)의 경우 압축률을 높일 가능성이 더 큽니다. 이를 달성하기 위해 조정할 수있는 몇 가지 매개 변수가 있습니까?



2
"압축 형식"에 대해 말합니다. "다른 값은 압축 상태 값으로 지정된 압축 형식을 사용하여 파일이 압축되었음을 나타냅니다." 이 "형식"의 의미와 설정 방법을 찾지 못했습니다.
Al Berger

답변:


14

짧은 답변

아니요, 현재로서는 불가능합니다.

긴 대답

파일 및 폴더 ( 1)FSCTL_SET_COMPRESSION제어 코드 및 압축 상태DeviceIoControl API 함수 에 전달함으로써 압축 및 압축 해제된다 . 압축 상태는 다음 중 하나 일 수 있습니다.

COMPRESSION_FORMAT_NONE = 0
COMPRESSION_FORMAT_DEFAULT = 1
COMPRESSION_FORMAT_LZNT1 = 2

0이 아닌 값은 대상 항목이 압축됨을 의미합니다. 공식 문서에서 :

LZNT1 압축 알고리즘은 유일한 압축 알고리즘입니다. 결과적으로 LZNT1 압축 알고리즘이 DEFAULT압축 방법으로 사용됩니다 .

소스 : FSCTL_SET_COMPRESSION 제어 코드

LZNT1 알고리즘은 속도를 위해 설계되었으며 사용자 지정 압축 수준을 설정할 수있는 방법이 없습니다.

1 폴더는 실제로 압축되지 않습니다. 압축 속성은 새 파일 및 하위 폴더에 기본 압축 상태 만 제공합니다.

추가 정보

NTFS 파일 시스템 볼륨은 개별 파일 기반의 파일 압축을 지원합니다. NTFS 파일 시스템에서 사용하는 파일 압축 알고리즘은 Lempel-Ziv 압축입니다. 이는 손실없는 압축 알고리즘으로, 데이터 압축 및 압축 해제가 발생할 때마다 일부 데이터가 손실되는 JPEG와 같은 손실 압축 알고리즘과 달리 파일을 압축 및 압축 해제 할 때 데이터가 손실되지 않습니다.

NTFS 파일 시스템에서 압축은 투명하게 수행됩니다. 즉, 기존 응용 프로그램을 변경하지 않고도 사용할 수 있습니다.

30 기가 바이트보다 큰 파일을 압축하면 압축에 실패 할 수 있습니다.

출처 : 파일 압축 및 압축 해제

NTFS의 압축 알고리즘은 최대 4KB의 클러스터 크기를 지원하도록 설계되었습니다. NTFS 볼륨에서 클러스터 크기가 4KB보다 크면 사용할 수있는 NTFS 압축 기능이 없습니다.

출처 : 파일 및 폴더 압축

추가 자료


12

일반적으로 and31415의 답변에 표시된 것처럼 불가능합니다 .

그러나 Microsoft는 Windows 10에 새로운 NTFS 압축 옵션 및 알고리즘 을 추가 했으므로 이제 압축 비율을 변경할 수있는 방법이 있습니다.

COMPACT [/C | /U] [/S[:dir]] [/A] [/I] [/F] [/Q] [/EXE[:algorithm]]
        [/CompactOs[:option] [/WinDir:dir]] [filename [...]]
...
  /EXE       Use compression optimized for executable files which are read
             frequently and not modified.  Supported algorithms are:
             XPRESS4K  (fastest) (default)
             XPRESS8K
             XPRESS16K
             LZX       (most compact)

새로운 알고리즘은 새로운 Compact OS 기능을 위한 것입니다 ( /CompactOs위 의 옵션 에서 볼 수 있듯이 ). 아이디어는 읽기 전용, 백업 및 액세스 빈도가 낮은 시스템 파일 을 가장 높은 비율 로 압축하는 것입니다 . 복구 파티션이 제거되고 압축 파일은 실행 (이미 최신 버전 인 경우) 및 복구 목적으로 사용됩니다.

LZX 알고리즘은 보관시 매우 효율적 입니다. 옵션 이름과 설명은 모두 "실행 파일"에 관한 것이지만이 옵션은 모든 파일에 적용 할 수 있습니다.

E:\test>compact /a

 Listing E:\test\
 New files added to this directory will not be compressed.

  1050909 :   1050909 = 1.0 to 1   sometext.txt

...

E:\test>compact /c /exe:lzx sometext.txt

 Compressing files in E:\test\

sometext.txt          1050909 :    176128 = 6.0 to 1 [OK]

1 files within 1 directories were compressed.
1,050,909 total bytes of data are stored in 176,128 bytes.
The compression ratio is 6.0 to 1.

그러나 이전 알고리즘과 달리 즉석 편집을 지원하지 않으므로 파일에 다시 쓰면 압축이 해제됩니다.

E:\test>echo x >> sometext.txt

E:\test>compact /a

 Listing E:\test\
 New files added to this directory will not be compressed.

  1050913 :   1050913 = 1.0 to 1   sometext.txt

중요한 점은 (강조 광산) 의 도움말 부분에 명시된 것처럼 새 알고리즘을 사용하여 새 파일이 자동으로 압축되도록 폴더를 설정할 수 없다는 compact것입니다

  /C         Compresses the specified files.  Directories will be marked
             so that files added afterward will be compressed ***unless /EXE
             is specified***.
  /U         Uncompresses the specified files.  Directories will be marked
             so that files added afterward will not be compressed.  If
             /EXE is specified, only files compressed as executables will
             be uncompressed; if this is omitted, only NTFS compressed
             files will be uncompressed.

따라서 백업 파일에 파일을 사용하려면 백업 후 또는 일정 시간이 지난 후 수동으로 압축하기 위해 스크립트를 실행해야 할 수도 있습니다

불행히도 Windows 10의 새로운 기능이므로 이전 버전에서는 사용할 수 없습니다. 그러나 NTFS-3g는이를 지원 하므로 Linux에서 액세스하는 데 문제가 없습니다. Windows 10을 사용하지 않는 경우 Linux live USB 또는 Windows 10 PE를 실행하여 해당 파일을 열 수 있습니다


2

타사 앱으로 압축 비율을 높일 수 있습니다. 가장 좋은 예는 zipmagic.co 입니다. 랩톱에서 아무 문제없이 1 년 동안 사용했습니다. 그러나 압축하면 드라이브가 완전히 조각화되고 쓸모 없게되므로 NTFS 또는 Zipmagic 압축을 사용하려면 SSD 하드 드라이브가 필요합니다! SSD 드라이브가 있다면 계속 즐기십시오!


0

이 목적으로 7-zip 또는 Winrar와 같은 아카이버를 사용하는 것이 좋습니다. Winrar를 사용하면 아카이버 내부에있는 파일에 액세스 할 수도 있습니다. 파일에 액세스하기 전에 먼저 전체 아카이브를 추출하고 파일을 닫고 파일을 저장할 때 수정 사항으로 아카이브를 업데이트합니다. 이렇게하면 전체 프로세스 속도가 느려질 수 있지만 백업이어야하므로 문제가 없습니다.

이것은 전체 백업 솔루션이 아닙니다. 공간을 절약 할 수있는 유일한 방법입니다.

또한 7z 및 rar 아카이브를 가상 드라이브로 마운트 할 수있는 프로그램이 있습니다. http://www.winarchiver.com/virtual-drive.htm


6
필자의 경우 NTFS 압축 드라이브는 크로스 플랫폼 백업 스토리지로 사용되며 tar 파일이 포함되어 있습니다. Linux 아카이브는 아카이브가 7z 또는 xz와 같은 압축 형식 인 경우 아카이브를 업데이트 할 수 없습니다. NTFS는 Linux Tar 아카이버에서 즉시 압축을 수행합니다.
Al Berger
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.