본문으로 건너뛰기

[Linux] How to reposync only latest package

reposync의 -n 옵션으로 RHEL 7 저장소에서 최신 버전 패키지만 동기화해 동기화 시간과 저장 용량을 줄이는 방법을 소개합니다.

요약

  • reposync -n -r rhel-7-server-rpms처럼 -n 옵션을 주면 최신 버전 패키지만 동기화할 수 있습니다.
  • 29,237개 패키지가 있는 rhel-7-server-rpms에서 5,475개만 받아 약 24,000개 패키지가 제외되었습니다.

테스트 환경 Red Hat Enterprise Linux 7 Server (rhel-7-server-rpms)

[Linux] How to reposync only latest package

reposync 를 받는데 모든 version 의 package 들이 있다보니 reposync 할 때, 시간도 오래 걸리고 용량도 큰 문제가 있었습니다.

[root@fastvm-r76-34 ~]# yum repolist
Loaded plugins: product-id, search-disabled-repos, subscription-manager
repo id                             repo                                        namestatus
!rhel-7-server-rpms/7Server/x86_64  Red Hat Enterprise Linux 7 Server (RPMs)    29,237
...

위와 같이 29237 개의 package 를 가지고 있습니다.

아래와 같이 하면 최신 버전의 package 만 sync 할 수 있습니다.

$ reposync -n -r rhel-7-server-rpms
(1/5475): 389-ds-base-1.3.10.1-14.el7_8.x86_64.rpm              | 1.7 MB  00:00:02 
(2/5475): 389-ds-base-libs-1.3.10.1-14.el7_8.x86_64.rpm         | 711 kB  00:00:02     
(3/5475): ElectricFence-2.2.2-39.el7.i686.rpm                   |  35 kB  00:00:00     
(4/5475): GConf2-3.2.6-8.el7.i686.rpm                           | 1.0 MB  00:00:00     
(5/5475): GConf2-3.2.6-8.el7.x86_64.rpm                         | 1.0 MB  00:00:00 
...

무려 24000여개의 package 가 제외 되었습니다.

최신 버전의 package 만 필요하다면 위와 같은 방법으로 sync 받으면 됩니다.

참고 자료

자주 묻는 질문

reposync로 최신 버전 패키지만 받으려면 어떤 옵션을 쓰나요?

-n 옵션을 사용합니다. 예를 들어 reposync -n -r rhel-7-server-rpms로 실행하면 최신 버전 패키지만 sync 됩니다.

reposync를 옵션 없이 실행하면 왜 오래 걸리나요?

저장소에 모든 버전의 패키지가 들어 있어 시간도 오래 걸리고 용량도 커지기 때문입니다. 본문 환경의 rhel-7-server-rpms는 29,237개 패키지를 가지고 있었습니다.