나무모에 미러 (일반/어두운 화면)
최근 수정 시각 : 2026-11-07 20:03:41

7-Zip


파일 압축 소프트웨어
{{{#!wiki style="margin:0 -10px -5px"
{{{#!folding [ 펼치기 · 접기 ]
{{{#!wiki style="margin:-6px -1px -11px"
무료 7-ZipO · PeaZipO · NanaZipO · ZPAQO · 코리요집 · 빵집†
상용 WinZip · WinRAR · 반디집A$ · 알집AP
}}}}}}}}} ||
A 광고 표시 · O 오픈 소스 · P 개인 사용자 한정 무료 · $ 유·무료 공존/부분유료 · † 단종
<colbgcolor=#000><colcolor=#fff> 파일:7ziplogo.png
분류 압축 소프트웨어
개발자 이고르 파블로프
최초 공개 1999년 7월 18일
정식 버전 26.05
플랫폼 Windows[WOA], Linux[21.01+], macOS[21.02+]
라이선스 프리웨어 (오픈 소스)
파일:홈페이지 아이콘.svg

1. 개요2. 상세3. 장점4. 단점5. 기타6. 관련 문서

1. 개요

러시아의 프로그래머 이고르 파블로프(Igor Pavlov, Игорь Павлов, 1950~)가 만든 압축 프로그램.

2. 상세

오픈 소스 LGPL 라이선스의 자유 소프트웨어이다. 반디집과 같은 프로그램들과는 달리 광고 따위는 전혀 없고 딱 깔끔하게 파일 탐색(7zFM.exe)과 압축/압축해제(7zG.exe) 기능만 한다.

32비트용 설치 파일을 받아서 Windows 98/ME에 설치하고 실행해 보면 별 문제 없이 동작하지만, 개발자의 답변으로는 Windows 9x에 대한 공식 지원은 끝났다고 한다. 동작할 수는 있어도 정상 동작을 보장하지는 않는 것이니 사용할 때 참고할 것.

자체 포맷인 7z와 함께 zip, tar, gz, bz2 등의 자유(free)포맷들과 rar, cab, arj, lzh 등의 비자유(non-free)포맷들을 지원한다. WinRAR 5.0에서 새로 추가된 RAR5 포맷을 한동안 열지 못했으나 2015년 8월 9일에 발표된 15.06 베타 버전부터 지원하기 시작했다.

현재의 7z 포맷은 멀티코어에 최적화된 LZMA2 알고리즘을 사용하며 압축률은 RAR5 포맷에 비교하여 약간 높은데, 속도 향상을 위해 매크로가 떡칠되어 코드가 길고 복잡하다. LZMA2의 전신인 LZMA는 등장 초기에도 당시의 RAR 포맷보다 높은 압축률을 보여주었으나 이후 RAR5 포맷에서 알고리즘을 개선하는 등 지속적으로 업데이트를 하는데도 7-Zip은 알고리즘의 업데이트가 없다시피 했었다. 압축 알고리즘은 무조건 압축률만을 따지는 게 아니라 압축 연산에 소요되는 시간과 압축률의 최적조건을 따져 가면서 개발하는 것인데, 7-Zip/LZMA는 처음부터 속도보다는 압축률에 초점을 두고 만들어졌기 때문에 압축률 개선은 그다지 손댈 것이 없었기 때문이다. 한동안 압축 알고리즘이 아닌 프로그램 자체(7-Zip File Manager)의 버그만 중점적으로 개선하다가 2012년 10월 26일 출시된 9.30 알파 버전부터 LZMA2 알고리즘이 기존의 LZMA를 대체하였다. 이후 버전들에도 레거시 포맷 지원을 위해 LZMA는 여전히 남아 있다. 그 밖에도 압축 파일의 암호화로 AES-256 Encryption을 지원하고 87개의 언어를 지원한다.

7-Zip은 오픈 소스 소프트웨어이긴 하지만, 출시 후 20여 년간 Windows 이외의 운영체제를 지원하지 않았다. 그렇기 때문에 리눅스를 비롯한 다른 운영체제에서는 7-Zip 규격을 지원하는 제삼자 프로그램 "p7zip"이 7-Zip의 대체재로 활용되었다. 하지만 p7zip은 2016년 이후 업데이트가 없는 등 지원이 사실상 중단된 상태였고, 7-Zip에 비해 성능차이도 상당했다. 그러던 2021년, Windows용 첫 출시 22년 만에 갑자기 7-Zip의 공식 리눅스와 macOS용 버전이 등장하였다. 단 macOS와 리눅스용 7-zip은 CLI로만 사용할 수 있고, Windows용과 같은 GUI 탐색기는 제공되지 않는다. Windows 버전의 7z.exe같은 바이너리만 제공되는 것이다. 굳이 리눅스 환경에서 7-Zip의 공식 GUI 버전을 쓰고 싶다면 와인(소프트웨어)를 이용하는 방법이 있기는 한데, 와인을 이용한 exe파일의 구동이 보통 그렇듯이 속도 감소와 호환성 문제는 감수해야 한다.

25.00 업데이트 이후 zip, 7z, xz로 압축 할 때에 한해 64코어 이상의 대형 CPU나 2개 이상의 물리 프로세서가 장착된 환경을 지원하게 되어 성능이 매우 향상되었다.

3. 장점

autorun.inf의 기능을 악용하는 악성코드인 오토런 바이러스 감염으로 이동식 디스크 안의 파일들이 보이지 않는 상황일 때 7-Zip 탐색기로 찾아 들어가면 보이는데, 이 파일들을 압축해서 다른 경로에 풀어 주면 복구가 되기도 한다. 이는 단순히 바이러스가 원본 폴더와 파일에 숨김 속성을 걸어서 보이지 않았던 것이 7-Zip으로 압축했다가 해제하는 과정에서 파일 속성이 풀렸기 때문이고, 7-Zip은 숨김 파일 속성을 무시하므로 정상적으로 내용물이 보인 것뿐이다. 이는 오토런 바이러스가 치료된 것이 아니므로 파일을 되찾고 나서 그대로 방치하면 절대 안 되고, 반드시 백신으로 제대로 치료해야 한다.
명령줄 옵션을 이용해 파일 또는 폴더를 대상으로 개별 항목 혹은 전체 묶음의 체크섬을 계산하는 기능이 있다. 별도의 프로그램이 필요 없을 정도로 많은 종류의 알고리즘을 지원하고 기능도 충실해서 MD5나 CRC 등의 일치 여부를 확인할 때 7zip만 가지고도 충분히 사용할 수 있다.
솔리드 압축의 단점으로는 압축된 파일들 중 하나만 압축 해제/수정하려고 할 땐 압축 파일 전체를 스캔해서 풀어야 한다(수정 시에는 전체를 해제한 뒤 해당 파일 수정 후 전체를 재압축). 이 때문에 시간이 오래 걸리게 된다. 또한 압축된 바이너리의 일부분이 훼손/변조되었을 때 훼손 지점 이후의 파일들을 전부 잃어버리게 된다.[5]
이건 솔리드라는 개념 자체의 한계이고, 7z은 널리 쓰이는 압축 포맷 중 유일하게 솔리드 블록 크기 조절을 통해 타협할 수 있으니 장점에 가깝다.[6]
그리고 자체적으로 CPU의 성능 벤치마크를 제공한다. 벤치마크하는 방법. 약 1분 정도 CPU 성능 벤치마크가 돌아간 뒤에 '전체 평가' 부분에 있는 GIPS 값을 비교하면 된다. 이를 이용하여 자신의 CPU 성능이 어느 정도 되는지 간단하게 알아볼 수 있다.
LZMA 알고리즘이 복잡한 탓에 압축률을 높였을 땐 압축 속도가 많이 느리지만 압축 해제 속도는 상당히 빠르다. 다른 압축 포맷들의 해제 속도가 압축 속도와 비슷한 수준으로 느리다는 것을 보면 큰 장점이다. 또한 분할 압축 파일 중 열고자 하는 파일이 첫 번째 파일이 아니어도 그냥 열어버리며 손상되거나 다운로드 중 끊긴 압축파일을 해제할 때도 복구 기능 사용 후 해제해야 하는 WinRAR와 달리 7-Zip은 그냥 해제해 버려서 온전치 못한 데이터의 일부라도 얻을 수 있다.

4. 단점

5. 기타

Delphi용 무료 컴포넌트는 TSevenZipVCL v0.76(D7-D10지원)이며 지원하는 7za.DLL 최신버전은 v9.20이다.
최신 Delphi에서 사용하려면 네이티브 소스로 제공되는 LZMA2-delphi 사용할수 있다.

유명한 프로그램인만큼, 도메인이 com으로 끝나는 피싱 사이트가 존재한다. 해당 사이트에서 설치 프로그램을 받고 실행 시 악성코드에 감염될 수 있으므로 반드시 사이트 주소가 공식 웹사이트인지 확인해야 한다.

6. 관련 문서


[WOA] Windows On Arm 정식 지원.[21.01+] 21.01 버전부터 지원한다.[21.02+] 21.02 버전부터 지원한다.[4] 구형 (파일) 시스템에서는 마우스를 파일에 갖다대고 우클릭만 해도 블루스크린이 뜨는 경우도 있다.[5] RAR은 recovery record를 통해 복구 가능성이 있지만 이 기능이 없는 7zip은 훼손에 약하다.[6] 128 MB, 256 MB와 같은 식으로 솔리드로 압축할 크기 한계를 정할 수 있다. 반디집은 고급 압축 설정에서 설정할 수 있다. 반면에 EGG(알집)은 on/off만 가능. RAR은 솔리드 블록을 크기로 지정하지는 못하지만, 일정 파일 개수 단위로 솔리드 블록을 재설정할 수 있다. (-s<N> 스위치) 멀티 뷸륨으로 분할 압축할 때 분할된 볼륨별로 솔리드 블록을 재성정할 수도 있다. (-sv 스위치) 이 기능을 CLI가 아닌 GUI에서 사용하려면 압축 시 대화창의 option탭에서 'Additional switches'란에 직접 타이핑해 넣어야 한다.[7] 다만, iOS는 여전히 사용이 불가능하다.[8] Windows에서 지원하지 않는 \, :, $ 같은 예약 문자들[9] rar의 recovery record, recovery volume