본문 바로가기
Old Posts/Linux

[Linux] Yum Delta RPM

by A6K 2021. 12. 18.

CentOS 등의 리눅스에서 패키지를 관리하기 위해 yum을 사용하는 경우가 많다. yum을 이용해서 기존에 설치되어 있는 패키지를 업데이트 할 때 서버 환경에 따라 다음 에러 메시지를 만나게 되는 경우가 있다.

Error: Delta RPMs disabled because /usr/bin/applydeltarpm not installed.

에러라고 메시지가 찍히기는 하지만 조금만 기다려보면 문제없이 패키지 업데이트가 진행된다. 실행에는 문제가 없지만 출력되는 에러가 거슬린다. 이 에러 메시지를 없애보자.

Delta RPM (DRPM)

이 에러 메시지는 현재 환경에 Delta RPM(DRPM)이 설치되어 있지 않기 때문에 발생한다. DRPM은 이름에서 알 수 있듯이 RPM 패키지 버전별 변경사항들을 이용해 업데이트를 진행하기 위한 소프트웨어다. RPM 패키지의 업데이트를 수행하기 위해 전체 RPM 설치 파일을 다운로드하는 대신 변경사항만 다운로드한 다음 설치되어 있는 버전에 적용하여 업데이트를 진행하는 방식이다.

DRPM은 네트워크를 통해 불필요하게 RPM 패키지 전체를 다운로드 받지 않고 마이너한 변경사항만을 빠르게 받아서 적용할 수 있도록해 네트워크 자원 소모를 줄이고 업데이트 속도를 빠르게 만들어준다. (반대로 변경사항을 적용하는데 추가적인 연산들이 들어가기 때문에 패키지의 버전 차이가 심하다면 그냥 새로 설치하는게 나을 수도 있다)

RHEL 6/7 그리고 CentOS6/7, Fedora 11부터 지원되며 RPM을 사용하는 리눅스 배포판들에서도 많은 경우 사용할 수 있다. 하지만 CentOS 최소설치 버전 등에서는 기본 설치가 안되어 있는 경우도 있어 이런 에러메시지가 출력되곤한다.

에러 해결방법 - 설치

에러가 신경쓰이면 Delta RPM을 설치해주면 된다. 우선 오류 메시지에 나와있는 프로그램의 경로 '/usr/bin/applydeltarpm'을 지원하는 패키지명을 찾는다.

$ sudo yum provides /usr/bin/applydeltarpm
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: ftp.daumkakao.com
 * epel: ftp.cuhk.edu.hk
 * extras: ftp.daumkakao.com
 * updates: ftp.daumkakao.com
 * webtatic: sp.repo.webtatic.com
deltarpm-3.6-3.el7.x86_64 : Create deltas between rpms
Repo        : base
Matched from:
Filename    : /usr/bin/applydeltarpm

패키지 이름을 확인했으니 설치해주면 된다.

$ sudo yum install deltarpm

설치가 완료되면 이제 패키지의 update 실행시 DRPM을 이용해서 다운로드하게 되고, 에러 메시지도 출력되지 않는다.

댓글