XZ Utils (xz-utils 또는 xz)는 모든 GNU / Linux 운영 체제에서 XZ 타르볼 작업에 필요한 모든 필수 유틸리티를 제공하는 오픈 소스 및 완전 무료 소프트웨어 프로젝트입니다. .xz 또는 .lzma 파일 확장자로 끝나는 아카이브를 추출하고 XZ 압축 방법으로 파일 및 폴더를 압축하면 .xz, .lzma, tar.xz 또는 tar.lzma 아카이브가 생성됩니다. / p>
가장 강력한 압축 알고리즘 중 하나
XZ는 의심 할 여지없이 세계에서 가장 강력한 압축 알고리즘 중 하나이며, GNU / Linux 시스템에서 실행됩니다. RAR, ZIP, GZ 또는 BZ2와 같이 다른 널리 사용되는 압축 방법보다 2 ~ 3 배 작은 압축 파일을 만들 수 있습니다. 보다 정확하게 말하자면, XZ 아카이브는 bzip2 tarball보다 15 % 작고 gzip 파일보다 30 % 작습니다.
상자 안의 내용은 무엇입니까?
XZ Utils 또는 xz-utils 또는 xz은 패키지의 공식 이름이며, 기본 소프트웨어 저장소에서 많은 GNU / Linux 운영 체제에 쉽게 설치할 수 있습니다. liblzma 압축 라이브러리, xz 명령 행 도구 및 xzdec 압축 해제 도구로 구성됩니다.
또한 xzgrep, xzegrep, xzfgrep, xzless, xzmore, xzcat, xzcmp 및 xzdiff를 포함하여 XZ 아카이브를보고 비교하고 grep 할 수있는 쉘 스크립트 세트와 함께 필요한 구성 요소 LZMA 아카이브를 처리합니다. 이제 LZMA 아카이브는 XZ에서 사용되지 않습니다. XZ 명령에는 압축 해제 및 압축을 강제하는 기능을 포함하여 몇 가지 중요한 옵션이 있습니다.
지원되는 플랫폼
XZ 데이터 압축 소프트웨어는 공식적으로 GNU / Linux, GNU / HURD, BSD (FreeBSD, OpenBSD, NetBSD, DragonBSD 및 MirBSD), MINIX, Solaris, IRIX, AIX, QNX, Mac OS X, Haiku , HP-UX, Tru64, OpenVMS, OpenVOS, IBM OS / 2, DOS (FreeDOS 및 MS-DOS) 및 Microsoft Windows 95 이상이 포함됩니다.
p>
liblzma :
LZMA_PROG_ERROR를 반환하는 대신 메모리 사용 제한으로 0을 허용하십시오. 이제 0은 사실상 0과 동일한 1 바이트가 지정된 것처럼 처리됩니다.
& quot; noexcept & quot;를 사용하십시오. & quot; throw () & quot; 공용 헤더에서 C ++ 11 (또는 최신 표준) 컴파일러가 사용될 때.
최신 Intel C 컴파일러에 대한 이식성 수정 사항을 추가했습니다.
Microsoft Visual Studio 빌드 파일은 windows / vs2013 및 windows / vs2017에서 이동되었습니다.
xz :
& quot; xz --list - robot missing_or_bad_file.xz & quot;을 수정하세요. 이것은 단위화된 문자열을 출력하려고 시도하여 쓰레기 출력을 생성합니다. 종료 상태가 0이 아니기 때문에 그러한 명령의 대부분은 가비지 출력을 해석하려고 시도하지 않습니다.
"xz --list foo.xz" & quot; 내부 오류 (버그) & quot;를 인쇄 할 수 있습니다. 특정 메모리 사용 한도를 설정 한 경우
버전의 새로운 기능 :
xz :
파일을 삭제하기 전에 항상 닫아서 일부 운영 체제 및 파일 시스템 조합의 문제를 피하십시오.
Windows에서 파일 타임 스탬프의 수정 된 복사.
Capsicum (FreeBSD & gt; = 10)을 사용하여 실험실 (기본적으로 비활성화 됨) 샌드 박스 지원을 추가했습니다. INSTALL의 --enable-sandbox를 참조하십시오.
liblzma에 대한 C99 / C11 적합성 수정. 링크 타임 최적화를 사용하여 최소한 빌드에 영향을주는 문제.
드물게 사용되는 함수 lzma_index_dup ()의 버그 수정.
외부 SHA-256 코드의 사용은 기본적으로 비활성화되어 있습니다. configure에 --enable-external-sha256을 사용하여 계속 활성화 할 수 있습니다. 기본적으로 비활성화하는 이유 (자세한 내용은 INSTALL 참조) ...
일부 OS 관련 SHA-256 구현은 OpenSSL과 충돌하며 liblzma와 libcrypto를 모두 연결하는 프로그램에서 문제를 일으 킵니다. 최소한 FreeBSD 10 및 MINIX 3.3.0은 영향을받습니다.
내부 SHA-256은 일부 운영 체제에서 SHA-256 코드보다 빠릅니다.
GNU / Linux 및 GNU / kFreeBSD에서 sched_getaffinity ()를 사용하도록 CPU 코어 수 감지를 변경했습니다.
build-system 및 xz을 수정하여 configure 옵션을 사용하여 libilzma에서 인코더, 디코더 또는 스레딩이 비활성화 된 경우에도 xz를 빌드 가능하게 만듭니다. 이 수정은 두 개의 새로운 #define을 config.h : HAVE_ENCODERS 및 HAVE_DECODERS에 추가했습니다.
버전 5.2.2의 새로운 기능 :
QNX 관련 코드의 버그 수정.
기존의 Linux 및 glibc 조합에서 이식성 문제를 피할 수있는 경우에도 pipe2 ()를 생략했습니다.
독일어 번역 업데이트.
Visual Studio 2013 업데이트 2 이상을 사용하여 정적 및 공유 liblzma (전체 XZ Utils가 아님)를 빌드하는 프로젝트 파일을 추가했습니다.
스레드 압축 풀기가 아직 구현되지 않았 음을 문서화했습니다. 멀티 스레딩 지원을 설명하는 5.2.0 뉴스 항목은 "압축 해제" "압축"이라고 말해야 할 때.
버전 5.2.1의 새로운 기능 :
LZMA1 및 LZMA2의 고속 모드에서 압축 비율 회귀 현상이 수정되었습니다. 이 버그는 5.1.4 베타 및 5.2.0 릴리스에 있습니다.
적어도 OpenBSD에 영향을주는 xz의 이식성 문제를 수정했습니다.
xzdiff가 다른 대부분의 mktemp 구현과 다른 FreeBSD의 mktemp와 호환되도록 수정되었습니다.
FreeBSD에서 cpuset_getaffinity ()를 사용하도록 CPU 코어 수 감지를 변경했습니다.
버전 5.2.0의 새로운 기능 :
5.0.8의 모든 수정 사항
liblzma : 프리셋이 사용되었을 때 lzma_stream_encoder_mt_memusage ()가 수정되었습니다.
xzdiff : mktemp가 설치되어 있지 않으면 임시 디렉토리를 만들기 위해 mkdir이 폴백으로 사용됩니다. mktemp를 설치하는 것이 좋습니다.
업데이트 된 프랑스어, 독일어, 이탈리아어, 폴란드어 및 베트남어 번역.
5.0.7 버전의 새로운 기능 :
5.0.6의 모든 수정 사항
liblzma : 스레드 된 엔코더 초기화에서 사전 설정 사용을 수정했습니다.
xz --block-list와 --block-size는 이제 단일 스레드 모드에서 함께 사용할 수 있습니다. 이전의 조합은 멀티 스레드 모드에서만 작동했습니다.
liblzma에 LZMA_IGNORE_CHECK에 대한 지원이 추가되었으며, xz에서 --ignore-check로 사용 가능하게되었습니다.
liblzma 속도 최적화 :
새로운 LZMA1 또는 LZMA2 엔코더의 초기화가 최적화되었습니다. (이미 할당 된 인코더를 재 초기화하는 속도는 영향을받지 않습니다.) 이것은 lzma_stream_buffer_encode () 및 이미 할당 된 인코더 상태가 재사용되지 않는 다른 유사한 상황에서 많은 작은 버퍼를 압축 할 때 도움이됩니다. 이 속도 향상은 xz를 한 번 실행하고 모든 파일을 명령 줄 인수로주는 대신 한 번에 하나씩 많은 작은 파일을 압축하는 경우 xz에서도 볼 수 있습니다.
정렬되지 않은 액세스가 허용되면 (--enable-unaligned-access로 구성) 버퍼 비교가 훨씬 빨라졌습니다. 이렇게하면 인코딩 속도가 크게 향상됩니다. 32 비트 및 64 비트 x86 (32 비트에는 최상의 결과를 얻으려면 SSE2가 필요하고 현재는 런타임 CPU 감지 기능이 없음)에 대한 아치 전용 코드가 있습니다. 다른 아치에는 아치 전용 솔루션만큼 최적이 아닌 일반적인 코드 만 있습니다.
SHA-256 코드는 몇 가지 속도 최적화가 이루어졌습니다. (내장 된 SHA-256 코드는 모든 운영 체제에서 사용되지 않습니다.)
liblzma는 이제 windows / config.h를 사용하여 MSVC 2013 업데이트 2 이상에서 빌드 할 수 있습니다.
베트남어 번역이 추가되었습니다.
버전 5.0.6의 새로운 기능 :
liblzma : 스레드 된 엔코더 초기화에서 프리셋 사용을 수정했습니다.
xz --block-list와 --block-size는 이제 단일 스레드 모드에서 함께 사용할 수 있습니다. 이전의 조합은 멀티 스레드 모드에서만 작동했습니다.
liblzma에 LZMA_IGNORE_CHECK에 대한 지원이 추가되었으며, xz에서 --ignore-check로 사용 가능하게되었습니다.
liblzma 속도 최적화 :
새로운 LZMA1 또는 LZMA2 엔코더의 초기화가 최적화되었습니다. (이미 할당 된 인코더를 재 초기화하는 속도는 영향을받지 않습니다.) 이것은 lzma_stream_buffer_encode () 및 이미 할당 된 인코더 상태가 재사용되지 않는 다른 유사한 상황에서 많은 작은 버퍼를 압축 할 때 도움이됩니다. 이 속도 향상은 xz를 한 번 실행하고 모든 파일을 명령 줄 인수로주는 대신 한 번에 하나씩 많은 작은 파일을 압축하는 경우 xz에서도 볼 수 있습니다.
정렬되지 않은 액세스가 허용되면 (--enable-unaligned-access로 구성) 버퍼 비교가 훨씬 빨라졌습니다. 이렇게하면 인코딩 속도가 크게 향상됩니다. 32 비트 및 64 비트 x86 (32 비트에는 최상의 결과를 얻으려면 SSE2가 필요하고 현재는 런타임 CPU 감지 기능이 없음)에 대한 아치 전용 코드가 있습니다. 다른 아치에는 아치 전용 솔루션만큼 최적이 아닌 일반적인 코드 만 있습니다.
SHA-256 코드는 몇 가지 속도 최적화가 이루어졌습니다. (내장 된 SHA-256 코드는 모든 운영 체제에서 사용되지 않습니다.)
liblzma는 이제 windows / config.h를 사용하여 MSVC 2013 업데이트 2 이상에서 빌드 할 수 있습니다.
베트남어 번역이 추가되었습니다.
댓글을 찾을 수 없습니다