ISO 이미지처럼 용량이 큰 파일을 다운로드하는 일은 정말 번거롭습니다. 인터넷 연결 상태에 따라 다운로드에 오랜 시간이 걸리고, 하드 드라이브 공간도 많이 차지합니다. 게다가 업데이트된 버전이 필요하면 이 모든 과정을 처음부터 다시 반복해야 합니다.
하지만 해결 방법이 있습니다. Zsync는 리눅스용 파일 동기화 도구로, 전체 파일을 다시 내려받지 않고도 변경된 부분만 업데이트할 수 있게 해줍니다.
Zsync는 파일과 디렉터리 동기화에 널리 쓰이는 또 다른 리눅스 도구인 rsync를 기반으로 만들어졌으며, 사용법도 매우 간단합니다. 대부분의 리눅스 배포판은 패키지 저장소에 zsync를 포함하고 있어서 설치와 시작도 어렵지 않습니다.
Zsync 설치하기
시작하기 전에 먼저 zsync를 설치해야 합니다. 가벼운 명령줄 유틸리티라서 의존성도 거의 없고 설치 과정도 단순합니다.
Ubuntu/Debian
Debian과 Ubuntu는 모두 zsync 패키지를 제공하며, 비교적 최신 버전을 유지하고 있습니다. Apt로 간단히 설치할 수 있습니다.
sudo apt install zsync
Fedora
Fedora에는 zsync 패키지가 없습니다. Fedora의 제한적인 저장소 정책이 때로는 발목을 잡는 부분입니다. 하지만 소스에서 직접 빌드해 설치하고 사용할 수는 있습니다.
먼저 Fedora에서 필요한 개발 도구들이 설치되어 있는지 확인하세요.
sudo dnf group install 'Development Tools'
zsync 다운로드 페이지에서 최신 소스 tarball을 받아, 빌드를 진행할 디렉터리에 압축을 풉니다. 그다음 터미널을 열고 해당 디렉터리로 이동합니다.
cd ~/Downloads/zsync-0.6.2
이제 설정, 컴파일, 설치 순서로 진행합니다.
./configure make -j4 sudo make install
Arch Linux
Arch는 기본 저장소에 zsync를 포함하고 있습니다. Pacman으로 설치하세요.
sudo pacman -S zsync
OpenSUSE
모든 OpenSUSE 버전에서 최신 zsync를 찾을 수 있습니다. 선호하는 패키지 관리 도구로 설치하면 됩니다.
sudo zypper in zsync
Solus
Solus 역시 기본 저장소에 zsync가 포함되어 있습니다. 바로 설치해 보세요.
sudo eopkg it zsync
파일 다운로드하기
Zsync는 사용법이 간단한 명령줄 유틸리티입니다. 다운로드하려는 .zsync 파일의 URL을 넘겨주기만 하면 바로 작업을 시작합니다. 물론 세부 옵션을 지정할 수 있는 몇 가지 플래그도 제공됩니다. 우선 파일 하나를 내려받아 보겠습니다. MX Linux는 Debian Stable 기반의 인기 있는 배포판으로, ISO 배포에 zsync를 활용합니다. MX Linux를 zsync로 내려받아 보세요. 실제로 대용량 파일이 필요 없다면 언제든 Ctrl + C를 눌러 취소할 수 있습니다.
zsync https://linuxfreedom.com/mxlinux/MX/Snapshots/MX-18_January_x64.iso.zsync

zsync는 먼저 업데이트할 기존 파일이 있는지 확인합니다. 기존 파일을 찾지 못하면 전체 파일을 그대로 내려받습니다.
.zsync 파일을 직접 컴퓨터에 내려받은 뒤 이를 이용해 대상 파일을 가져오는 방법도 있습니다. -i 플래그로 파일 경로를 지정하면 됩니다.
zsync -i ~/Downloads/MX-18_January_x64.iso.zsync
결과는 완전히 동일합니다.
출력 파일 이름을 바꾸고 싶다면 -o 플래그를 사용하세요. 파일 이름을 짧게 줄이면 작업하기가 한결 편해집니다.
zsync https://linuxfreedom.com/mxlinux/MX/Snapshots/MX-18_January_x64.iso.zsync -o MX-18.iso
마찬가지로 같은 파일을 얻게 되며, 이름만 달라집니다.
파일 업데이트하기
Ubuntu 역시 ISO 배포에 Zsync 파일을 사용합니다. 다만 접근이 쉽지 않은데, Ubuntu CD 이미지 서버를 통해서만 찾을 수 있지만 Ubuntu 본체와 여러 파생 배포판용 파일이 모두 마련되어 있습니다. 과정은 새 파일을 내려받을 때와 완전히 같습니다. Zsync는 여전히 현재 디렉터리에서 기존 파일을 먼저 찾고, 파일을 발견했을 때만 두 버전의 차이를 비교해 변경된 부분만 내려받습니다. 아래 이미지는 zsync가 기존 Kubuntu ISO를 발견했을 때의 동작을 보여줍니다.

결론
사실 더 설명할 것이 많지 않습니다. Zsync는 다운로드량을 최소화하는 데 탁월한 도구입니다. 유일한 아쉬움은 그 잠재력에 비해 널리 쓰이지 않는다는 점입니다. 그럼에도 특히 대용량 파일을 자주 내려받는 사용자라면 한번쯤 살펴볼 가치가 충분합니다.