공유할 서비스 선택

TECH


TECH

OS RHEL7.9 최신 Local Repository 만들기 #reposync #createrepo

페이지 정보

작성자 OSworker 아이디로 검색 전체게시물 댓글 0건 조회 111회 좋아요 0회 작성일 25-10-17 20:55

본문

안녕하세요 

 

오늘은 아직도 RHEL7.9를 사용하시는 분들을 위해 RHEL7.9 최신 Repository 를 만드는 법을 알려드리려합니다. 

 

단지 레드햇 사이트에서 ISO를 받아와서 하는것이 아니고, 온라인으로 최신 RPM을 모두 다운받은 다음 Local Repository를 만드는 법입니다. 

다시 말하면 어떻게 최신 RPM을 모두 다운받고 그 RPM을 Repository로 만드는것인지를 알려드리는것입니다. 

 

그리고 현재 RHEL7.9를 설치 후에 ELS 기준에 맞게 하려면 RHEL7.9가 ISO기준이 아니라 최신 버전으로 운영이되어야합니다. 그래서 

이 방법을 알려드리는것입니다.  

 

 

 

오늘 작업 순서를 간략하게 설명하면, 

 

1. 인터넷 되는 서버 A 준비(RHEL7.6) -> 2. A 서버에서 RedHat ID로 로그인 ->3. RedHat 포털에서 RHEL7.9 최신 RPM 다운로드 

    ->4. Local Repository 만들기 -> 5.RHEL7.9로 업데이트  

 

 

> 상세 작업 순서 

 

1.  인터넷 되는 서버 A 준비(RHEL7.6)

- 현재 OS 버전 확인

[root@OS76 ~]# uname -a

Linux OS76 3.10.0-957.el7.x86_64 #1 SMP Thu Oct 1 18:43:52 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

 

[root@OS76 ~]# cat /etc/redhat-release

Red Hat Enterprise Linux Server release 7.6 (Maipo)

 

 

 

2.  A 서버에서 RedHat ID로 로그인

- RedHat 포털에서 RPM 다운로드를 받기위해 ID 로그인

 

[root@OS76 ~]# subscription-manager register

Registering to: subscription.rhsm.redhat.com:443/subscription

Username: 

Password:

The registered system name is: OS76


 

3. RedHat 포털에서 RHEL7.9 최신 RPM 다운로드 

- 현재 연결된 repolist 확인

 

[root@OS76 ~]# yum repolist

Loaded plugins: langpacks, product-id, search-disabled-repos, subscription-manager

This system is registered with an entitlement server, but is not receiving updates. You can use subscription-manager to assign subscriptions.

 

repo id                                                                               repo name                                                                                    status

rhel-7-server-rpms/7Server/x86_64                                 Red Hat Enterprise Linux 7 Server (RPMs)                                                               34,484

 

=> 위에 보듯이 현재는 OS 기본 밖에 등록이 안되어있습니다. 

 

 운영하는 서버에 기본RPM만이 아닌  HA 나 기타 다른 패키지들이 있을 수 있기에 몇 가지 더 추가를 해주겠습니다. 

 

[root@OS76 ]# subscription-manager repos --enable=rhel-7-server-optional-rpms

[root@OS76 ]# subscription-manager repos --enable=rhel-7-server-extras-rpms

[root@OS76 ]# subscription-manager repos --enable=rhel-7-server-els-rpms

 

######  설명  ###################################################### 

 

1) rhel-7-server-optional-rpms

 

RHEL 7 의 추가(optional) 패키지 저장소입니다.

기본 저장소(Base, Updates)에는 포함되지 않은 비핵심 패키지(즉, 선택적 패키지)를 제공합니다.

예를 들어, 일부 오픈소스 라이브러리나 개발용 도구들이 여기에 들어 있습니다.

 

예시:

python-pip, libevent-devel, json-c 등의 라이브러리 패키지들이 이 리포지토리에 포함되어 있을 수 있습니다.

 

2) rhel-7-server-extras-rpms

 

RHEL 정식 버전에 포함되지 않지만, Red Hat이 추가로 제공하는 최신 패키지들이 들어있는 저장소입니다.

예를 들어, Docker, container tools, cloud-init, etcd, ansible 등이 여기에 포함됩니다.

말 그대로 “Extra (추가)” 기능을 제공하는 리포지토리입니다.

 

예시:

RHEL 7에서 Docker(도커)를 설치하려면 rhel-7-server-extras-rpms가 활성화되어 있어야 합니다.

 

3) rhel-7-server-els-rpms

 

ELS (Extended Life-cycle Support) 저장소입니다.

RHEL 7의 일반 지원 기간이 끝난 후에도 Red Hat이 제공하는 보안 업데이트 및 중요 버그 수정 패키지를 받을 수 있습니다.

단, 이 리포지토리는 별도의 유료 ELS 구독(Subscription) 을 구매한 고객만 사용할 수 있습니다.

 

ELS = Extended Life-cycle Support (확장 지원 서비스)

일반 지원 종료 이후에도 패치 유지 가능 
 

###################################################### 

 

- 인터넷에 있는 최신 파일을 내 로컬 저장소로 내려받는 작업

 

- 각 용도별 디렉토리를 생성 

 

[root@OS76 ~]# mkdir -p /data/rhel7/base

[root@OS76 ~]# mkdir -p  /data/rhel7/rhel7/optional

[root@OS76 ~]# mkdir -p  /data/rhel7/extras

[root@OS76 ~]# mkdir -p  /data/rhel7/els

 

 

-  reposync 실행

reposync --repoid=rhel-7-server-rpms \

         --download_path=/data/rhel7/base \

         --downloadcomps \

         --download-metadata \

         --newest-only                                 // 최근 RHEL7.9 버전으로 받아옴(중요)

 

//   --newest-only 을 안하게 되면 RHEL7.0부터 7.9 까지 모든 파일을 다운로드 받습니다. 

 

reposync --repoid=rhel-7-server-optional-rpms \

         --download_path=/data/rhel7/rhel7/optional \

         --downloadcomps \

         --download-metadata \

         --newest-only

 

reposync --repoid=rhel-7-server-extras-rpms \

         --download_path=/data/rhel7/extras \

         --downloadcomps \

         --download-metadata \ 

         --newest-only

 

reposync --repoid=rhel-7-server-els-rpms \

         --download_path=/data/rhel7/els \

         --downloadcomps \

         --download-metadata \ 

         --newest-only

 

 

4. Local Repository 만들기


  - RPM만 모두 다운로드 받는다고 Repository가 안됩니다. 

    reposync가 끝난 후, 해당 디렉터리에서 메타데이터를 만들어줘야합니다. 

 

# createrepo /data/rhel7/base
# createrepo /data/rhel7/optional
# createrepo /data/rhel7/extras
# createrepo /data/rhel7/els

####  설명 ########################
createrepo = “create repository”의 줄임말
디렉터리 안의 .rpm 파일들을 인식해서, YUM이 사용할 수 있는 메타데이터(repository metadata) 를 만들어주는 도구입니다.
##################################


- 다운로드가 완료되었기때문에 다운를 받기위해했던 ID를 지워줍니다. 
 우린 이제 Local Repository를 쓸거라서요.

[root@OS76 yum.repos.d]# subscription-manager unregister


- repo 설정 하기 

[root@OS76 data]# cat /etc/yum.repos.d/local.repo
[base]
name=base
baseurl=file:///data/rhel7/base
enabled=1
gpgcheck=0


[optional]
name=optional
baseurl=file:///data/rhel7/optional
enabled=1
gpgcheck=0

[extras]
name=extras
baseurl=file:///data/rhel7/extras
enabled=1
gpgcheck=0

[els]
name=els
baseurl=file:///data/rhel7/els
enabled=1
gpgcheck=0


- Repository 확인 
  .아래와 같이 Local Repository가 완성됨

[root@OS76 yum.repos.d]# yum repolist
Loaded plugins: langpacks, product-id, search-disabled-repos, subscription-manager
This system is not registered with an entitlement server. You can use subscription-manager to register.

repo id                                               repo name                                                                                              status
base                                                  base                                                                                                       5,514
els                                                    els                                                                                                        5,621
extras                                                extras                                                                                                     1,491
optional                                             optional                                                                                                   5,198
repolist: 17,824


 5.RHEL7.9로 업데이트  

[root@OS76 yum.repos.d]# yum update
Loaded plugins: langpacks, product-id, search-disabled-repos, subscription-manager
This system is not registered with an entitlement server. You can use subscription-manager to register.
Resolving Dependencies
--> Running transaction check
---> Package GeoIP.x86_64 0:1.5.0-13.el7 will be updated
---> Package GeoIP.x86_64 0:1.5.0-14.el7 will be an update
--> Processing Dependency: geoipupdate for package: GeoIP-1.
...........
.......


[root@OS76 ~]# reboot

[root@OS76 ~]# uname -a
Linux OS76 3.10.0-1160.138.1.el7.x86_64 #1 SMP Wed Aug 3 19:20:34 EDT 2025 x86_64 x86_64 x86_64 GNU/Linux

[root@OS76 ~]# cat /etc/redhat-release
Red Hat Enterprise Linux Server release 7.9 (Maipo)

이렇게 완료가 되었습니다. 

위예시는 자기 자신 서버가 Repository 가 되는 것이고 위 서버를 만들고 다른 여러 client 가 이 서버에 연결하여 RHEL7.9를 업데이트 하고자하면 
NFS나 HTTP, FTP 서버로 만들어서 연결하면 됩니다. 

혹, 궁금하신 점 있으시면 언제든 댓글로 글 남겨주세요

감사합니다~

댓글목록

등록된 댓글이 없습니다.

TECH 목록
번호 제목 작성자 작성일 조회수
271 OS OSworker 아이디로 검색 전체게시물 12-14 61
보안취약점할때 이젠 Spectre, Meltdown 따로하지 않고 mitigations으로 통합 설정합니다~

카테고리 : OS

61 0
작성자 : OSworker 25/12/14
270 OS OSworker 아이디로 검색 전체게시물 11-29 91
Kernel parameter 가 총 몇개 인가요? 왜 매번 다르죠? #RHEL9.7 #kernel #boot

카테고리 : OS

91 0
작성자 : OSworker 25/11/29
269 OS OSworker 아이디로 검색 전체게시물 11-23 76
문제점 : Messages 로그에 자꾸 과거 로그가 남겨집니다. #rsyslog #RHEL8 #Log

카테고리 : OS

76 0
작성자 : OSworker 25/11/23
268 OS OSworker 아이디로 검색 전체게시물 11-16 82
RHEL 10.1의 새로운 기능: 오프라인 지원, 편리한 AI 가속기 등

카테고리 : OS

82 0
작성자 : OSworker 25/11/16
267 ETC OSworker 아이디로 검색 전체게시물 10-31 100
Red Hat interactive labs 이라고 들어보셨나요? 직접 연습할수있는 사이트?

카테고리 : ETC

100 0
작성자 : OSworker 25/10/31
266 OS OSworker 아이디로 검색 전체게시물 10-26 117
KVM이란 무엇인가요? #VM #가상화

카테고리 : OS

117 0
작성자 : OSworker 25/10/26
열람중 OS OSworker 아이디로 검색 전체게시물 10-17 112
열람중
RHEL7.9 최신 Local Repository 만들기 #reposync #createrepo

카테고리 : OS

112 0
작성자 : OSworker 25/10/17
264 OS OSworker 아이디로 검색 전체게시물 09-28 119
KVM을 사용한 Red Hat Enterprise Linux의 가상화 제한 - RHEL10 포함

카테고리 : OS

119 0
작성자 : OSworker 25/09/28
263 OS OSworker 아이디로 검색 전체게시물 09-21 113
RHEL Lightspeed 를 인터넷없이 사용하기~~!! #RHEL10 #폐쇠망

카테고리 : OS

113 0
작성자 : OSworker 25/09/21
262 OS OSworker 아이디로 검색 전체게시물 09-16 72
Image mode 실습해보기 ~!

카테고리 : OS

72 0
작성자 : OSworker 25/09/16
Total 301건
게시물 검색

주식회사 클럭스| 대표 : 이찬호| 사업자등록번호 : 107-87-27655
주소 : 서울특별시 영등포구 국회대로 800, 여의도파라곤
E-mail : sales@chlux.co.kr
Copyright © 클럭스 www.chlux.co.kr All rights reserved.
상단으로Top