개발/Linux

[Linux] RHEL(Red Hat Enterprise Linux) 9.x설치 방법

moonzoo 2025. 11. 5. 17:42

RHEL 설치 가이드

실제 운영 환경에 변경 사항을 적용하기 전, 운영 환경과 동일한 테스트 환경을 구성하여 사전 검증을 진행하는 것은 안정적인 시스템 운영의 핵심입니다.

 

예를 들어, 이미 여러 라이브러리가 설치된 운영 서버에 yum install 이나 dnf install 명령으로 새 패키지를 설치할 경우, 기존 라이브러리와의 종속성(Dependency) 문제가 발생할 수 있습니다. 이는 예기치 않게 기존 서비스의 동작을 중단시키는 심각한 장애로 이어질 수 있습니다. 이러한 위험을 방지하기 위해, 실제 운영 환경에 반영하기 전 동일한 OS 버전과 드라이버 환경을 갖춘 테스트 서버를 구축하여 충분한 테스트를 거치는 과정이 필수적입니다.

 

이 과정의 가장 기본이 되는 작업이 바로 운영체제(OS) 설치입니다. 이번 글에서는 Red Hat Enterprise Linux (RHEL)를 설치하는 전체 과정을 작성하고자 합니다.

이 가이드는 다음 내용을 순서대로 진행합니다.

  • Red Hat 개발자 계정 생성 (무료 RHEL 사용을 위함)
  • RHEL 9.4 설치용 부팅 USB 제작 (ISO 다운로드 및 Rufus 설정)
  • BIOS 환경 진입 및 USB 부팅을 통한 OS 설치
  • 설치 완료 후, 개발자 계정을 이용한 시스템 등록 및 저장소(Repository) 활성화
  • 기본 필수 패키지 설치

1. Red Hat 개발자 계정 생성

RHEL은 상용 운영체제이지만, Red Hat은 개인 개발자 및 소규모 개발팀을 위해 'Red Hat Developer Subscription'이라는 무료 구독 프로그램을 제공합니다. 이 구독을 이용하면 최대 16대의 물리적 또는 가상 시스템에서 RHEL을 합법적으로 사용하고 공식 업데이트와 패치를 받을 수 있습니다.

 

테스트 환경 구축을 위한 RHEL 설치 파일(ISO)을 다운로드하려면, 이 개발자 계정이 반드시 필요합니다. 저장소 등록도 마찬가지고요!

 

1.1 Red Hat 개발자 포털 접속

  1. 먼저 Red Hat 개발자 포털 (developers.redhat.com) 웹사이트에 접속합니다.
  2. 웹사이트 우측 상단에 있는 Log In 또는 Register 버튼을 클릭합니다.

1.2 계정 등록 양식 작성

  1. Register for a Red Hat account (Red Hat 계정 등록) 페이지로 이동하면, 계정 정보를 입력하는 양식이 나타납니다.
  2. 필수 항목들을 정확하게 입력합니다.
    • Red Hat ID (계정 ID): 로그인 시 사용할 고유한 아이디를 입력합니다.
    • Email Address (이메일 주소): 계정 활성화 및 알림을 받을 유효한 이메일 주소를 입력합니다.
    • First Name (이름) / Last Name (성): 영문으로 본인의 이름을 입력합니다.
    • Password (비밀번호): Red Hat의 정책에 맞는 비밀번호를 설정합니다.
    • Job role (직책) / Counyry/Region (지역): 직책과 지역을 설정합니다.
  3. 이용 약관 동의(Check) 항목을 선택한 후, Create My Account (계정 생성) 버튼을 클릭합니다.

1.3 이메일 주소 확인 (계정 활성화)

  1. 계정 생성을 완료하면, 1.2 단계에서 입력한 이메일 주소로 'Account Verification' 또는 'Verify your email address'와 같은 제목의 확인 메일이 즉시 발송됩니다.
  2. 메일함을 확인하여 Red Hat에서 보낸 메일을 엽니다.
  3. 메일 본문에 있는 계정 활성화 링크(Verification Link)를 클릭하여 이메일 인증을 완료합니다.

1.4 로그인 확인

이메일 인증 링크를 클릭하면 계정이 성공적으로 활성화됩니다. 다시 Red Hat 개발자 포털로 돌아가, 방금 생성한 Red Hat ID비밀번호로 로그인을 시도하여 성공하는지 확인합니다.

로그인이 성공적으로 완료되었다면, RHEL 설치 파일(ISO)을 다운로드할 수 있습니다.

 

1.5 Subscription 활성화 확인

아래의 링크에서 Subscription이 Active 상태인지 확인합니다.

이는 저장소를 활성화 할 때 사용됩니다.

https://console.redhat.com/subscriptions/inventory


2. RHEL 부팅 USB 만들기

개발자 계정을 성공적으로 생성했다면, 이제 이 계정으로 RHEL 9.4의 공식 설치 파일(ISO)을 다운로드하고, 이 파일로 부팅 가능한 USB 드라이브를 만들 차례입니다.

 

2.1 RHEL 9.4 설치 파일(ISO) 다운로드

  1. Red Hat 개발자 포털의 RHEL 다운로드 페이지에 접속합니다. (1단계에서 만든 계정으로 로그인이 되어 있어야 합니다.)
  2. 페이지에서 최신 버전(예: RHEL 9.4)의 다운로드 목록을 찾습니다. 여러 파일 중, 우리의 목적에 맞는 파일을 정확히 선택해야 합니다.
    • 아키텍처 (CPU 종류): x86_64
      • 현재 사용 중인 대부분의 데스크탑, 노트북 (Intel, AMD CPU)은 x86_64 아키텍처입니다. 이것을 선택합니다.
      • (aarch64는 Apple M1/M2, 라즈베리 파이와 같은 ARM 기반 CPU용입니다.)
    • ISO 타입 (설치 방식): DVD iso
      • Boot iso: 설치 프로그램 부팅만 가능한 최소 파일입니다. 설치 과정에서 인터넷을 통해 모든 패키지를 실시간으로 다운로드해야 하므로, 네트워크 드라이버가 잡히지 않거나 인터넷이 불안정하면 설치에 실패할 수 있습니다.
      • DVD iso: 설치에 필요한 모든 패키지(약 9~10GB)가 포함된 전체 파일입니다. 인터넷 연결 없이도 설치가 가능하여 가장 안정적이고 확실한 방법입니다.
    [결론] 이 가이드에서는 x86_64 DVD iso 파일을 다운로드하여 진행합니다.

2.2 USB 제작 도구 'Rufus' 준비

다운로드한 iso 파일은 윈도우에서 USB로 단순 복사-붙여넣기만 해서는 안 됩니다. 이 파일을 부팅 가능하게 USB에 써주는(굽는) 전용 도구가 필요합니다. 윈도우 환경에서는 Rufus(루퍼스)를 가장 많이 사용합니다.

  1. Rufus 공식 웹사이트에 접속하여 최신 버전을 다운로드합니다.
  2. 부팅 USB로 사용할 USB 드라이브를 컴퓨터에 연결합니다.
    • [용량] DVD iso 파일이 9GB가 넘으므로 최소 16GB 이상의 USB를 준비해야 합니다.
    • [경고] 제작 과정에서 USB 안의 모든 데이터는 영구적으로 삭제됩니다. 중요한 데이터는 반드시 사전에 백업해야 합니다.

2.3 Rufus를 사용하여 부팅 USB 제작하기

이제 Rufus를 실행하여 RHEL 9.4 부팅 USB를 만듭니다.

  1. 다운로드한 Rufus 실행 파일(예: rufus-4.x_p.exe)을 실행합니다.
  2. Rufus 창이 뜨면, 다음과 같이 설정합니다.
    • ① 장치: 16GB USB 드라이브가 올바르게 선택되었는지 확인합니다.
    • ② 부트 선택: 선택 버튼을 클릭하여, 2.1 단계에서 다운로드한 rhel-9.4-x86_64-dvd.iso 파일을 지정합니다.
    • ③ 파티션 방식 / 대상 시스템: ISO 파일을 선택하면, Rufus가 자동으로 최적의 값으로 설정해 줍니다. 특별한 이유가 없다면 변경하지 않습니다.
  3. 모든 설정이 완료되었으면 시작 버튼을 클릭합니다.
  4. 'ISOHybrid' 이미지 감지 팝업 시작을 누르면 RHEL 이미지의 특성을 감지하고 팝업 창이 나타납니다.
    • ISO 이미지 모드 (기본값)로 쓰면 설치 중 미디어를 찾지 못하는 오류가 발생할 수 있습니다.
    • 반드시 DD 이미지 모드로 쓰기를 선택하고 OK 버튼을 클릭합니다.
    • (DD 모드는 ISO 이미지를 USB에 비트 단위로 완벽하게 복제하여, 호환성 문제를 방지합니다.)
  5. 최종 데이터 삭제 경고 USB 드라이브의 모든 데이터가 삭제된다는 마지막 경고 창이 나타납니다. 확인을 눌러 제작을 시작합니다.
  6. 제작 완료 진행률 표시줄(녹색)이 100% 채워지고, 상태 메시지가 **'준비'**로 바뀌면 모든 작업이 완료된 것입니다. 닫기 버튼을 눌러 프로그램을 종료합니다.

이제 RHEL 9.4 설치를 위한 모든 준비가 완료된 부팅 USB가 완성되었습니다.

 


3. BIOS 진입 및 RHEL 9.4 OS 설치

앞 단계에서 RHEL 9.4 부팅 USB가 성공적으로 준비되었습니다. 이제 이 USB를 사용하여 실제 데스크탑(테스트 서버)에 RHEL을 설치할 차례입니다.

 

여기서 이미지들은 다시 서버를 밀고 세팅하기는 귀찮아서... 인터넷에서 적절한 사진들을 찾아 첨부하겠습니다.

 

3.1 BIOS 진입 및 부팅 순서 변경

https://tech.zinnunkebi.com/all-about-os/all-about-linux/linux-rhel9-install/

  1. 설치를 진행할 데스크탑의 전원이 꺼진 상태에서, 방금 제작한 RHEL 부팅 USB를 꽂습니다.
  2. 데스크탑의 전원을 켭니다.
  3. 데스크탑 전원을 켜자마자, 메인보드 로고가 나올 때 F12, F11, F10, Esc 키 (제조사마다 다름)를 반복해서 누릅니다.
  4. 'Boot Menu' 또는 '부팅 장치 선택' 화면이 나타납니다. 키보드로 USB 드라이브(저희가 만든 USB)를 선택하고 Enter를 누릅니다
  5. 가장 위에 있는 Install Red Hat Enterprise Linux 9.4에서 Enter 키를 누릅니다.

3.2 RHEL 설치 프로그램 시작

https://tech.zinnunkebi.com/all-about-os/all-about-linux/linux-rhel9-install/

  1. 설치 프로그램이 로드된 후, 가장 먼저 설치 과정에서 사용할 언어를 선택합니다. English (English - United States)를 선택하고 Continue를 클릭합니다.
    • (설치 프로그램 언어를 영어로 진행하는 것이, 향후 에러 메시지 등을 검색할 때 더 용이합니다.)

3.3 설치 Installation Summary 설정

https://jandari91.github.io/posts/RHEL/

가장 핵심적인 단계입니다. 'Installation Summary'라는 화면에서 설치에 필요한 모든 항목을 설정합니다. 느낌표(!)가 표시된 항목은 반드시 설정해야 Begin Installation 버튼이 활성화됩니다.

1. Language Support (언어 지원)

  • Language Support를 클릭합니다.
  • 왼쪽 목록에서 Korean (한국어)을 찾아 체크하고, 오른쪽에서 한국어(대한민국)을 선택한 뒤 Done을 클릭합니다.
  • (이렇게 하면 설치될 OS의 기본 언어가 한국어로 설정됩니다.)

2. Time & Date (시간 및 날짜)

https://jandari91.github.io/posts/RHEL/

  • Time & Date를 클릭합니다.
  • 지도에서 Region: Asia, City: Seoul을 선택합니다.
  • 우측 상단의 Network Time 스위치가 ON으로 되어 있는지 확인하고 Done을 클릭합니다.

3. Software Selection (소프트웨어 선택)

https://jandari91.github.io/posts/RHEL/

  • Software Selection을 클릭합니다.
  • 운영 환경과 동일한 테스트를 위해, GUI가 없는 텍스트 기반 환경인 Server를 선택하고 Done을 클릭합니다.
  • (필요에 따라 'Server with GUI'나 'Minimal Install'을 선택할 수도 있습니다.)

4.  Connect to Red Hat (Red Hat에 연결)

  • 이 단계는 건너뜁니다.
  • 설치 중에 등록하는 것보다, 설치가 완료된 후 터미널에서 subscription-manager 명령어로 직접 등록하는 것이 더 확실합니다.

5. Installation Destination (설치 대상)

https://docs.redhat.com/ko/documentation/red_hat_enterprise_linux/7/html/installation_guide/chap-simple-install

  • Installation Destination을 클릭합니다. 
  • RHEL을 설치할 디스크(예: KXG8AZN84T09 LA KOXIA... 라고 표시된 디스크)를 클릭하여 v 표시가 나타나게 합니다.
  • Storage Configuration (저장소 구성)은 Automatic (자동)으로 설정된 것을 확인합니다.
  • Done을 클릭합니다. (만약 기존에 데이터가 있던 디스크라면, 파티션을 회수한다는 팝업이 뜰 수 있습니다. Reclaim space를 눌러 진행합니다.)

6. Network & Host Name (네트워크 및 호스트 이름)

https://docs.redhat.com/ko/documentation/red_hat_enterprise_linux/7/html/installation_guide/chap-simple-install

  • Network & Host Name을 클릭합니다.
  • 좌측에서 이더넷(유선 랜카드, 예: enp...)을 선택하고, 우측 상단의 스위치를 ON으로 변경합니다. (잠시 기다리면 DHCP로 IP를 할당받으려고 시도합니다.)
  • 테스트 서버는 IP가 바뀌면 안 되므로, 고정 IP를 설정합니다. Configure... 버튼을 클릭합니다.
  • IPv4 Settings 탭을 선택합니다.
    • Method: Manual (수동)으로 변경
    • Addresses 항목의 Add 버튼 클릭
    • 운영 환경에 맞게 본인의 IP 정보를 입력합니다.
      • Address: 123.567.0.150
      • Netmask: 24 (또는 255.255.255.0)
      • Gateway: 123.567.0.1
    • DNS servers: 8.8.8.8 (Google의 공용 DNS 서버 IP 주소)
  • Save를 눌러 저장하고, Done을 눌러 나옵니다.

7. Root Password (Root 비밀번호)

https://jandari91.github.io/posts/RHEL/

  • Root Password를 클릭합니다.
  • Root 계정(최고 관리자)의 비밀번호를 설정하고 Done을 클릭합니다.

8. User Creation (사용자 생성)

https://jandari91.github.io/posts/RHEL/

  • User Creation을 클릭합니다.
  • Root 계정 대신 평상시에 사용할 일반 관리자 계정을 생성합니다.
  • 이름과 계정 ID, 비밀번호를 입력합니다.
  • Make this user administrator (이 사용자를 관리자로 지정) 체크박스를 반드시 체크합니다. (그래야 sudo 명령어를 사용할 수 있습니다.)
  • Done을 클릭합니다.

8. Begin Installation & Reboot System

  1. 위의 모든 설정이 완료되어 'Installation Summary' 화면의 모든 항목에서 느낌표가 사라졌다면, 우측 하단의 Begin Installation (설치 시작) 버튼이 활성화됩니다.
  2. Begin Installation을 클릭하여 설치를 시작합니다.
  3. 설치가 진행되는 동안 패키지가 설치되는 과정을 볼 수 있습니다. (수 분~수십 분 소요)
  4. 설치가 완료되면 Reboot System (시스템 재부팅) 버튼이 나타납니다.
  5. Reboot System을 클릭하여 시스템을 재부팅합니다.
    • 설치에 사용했던 USB 드라이브를 컴퓨터에서 제거해주세요.

4. RHEL 시스템 등록 및 저장소(Repository) 활성화

RHEL 설치를 성공적으로 마쳤습니다. 하지만 이 상태는 아직 '미등록' 상태이기 때문에, dnf나 yum 명령어를 사용해도 패키지를 다운로드하거나 시스템을 업데이트할 수 없습니다.

 

테스트 서버를 운영 환경과 동일하게 사용하려면, 1단계에서 생성했던 Red Hat 개발자 계정을 사용하여 이 시스템을 Red Hat 네트워크에 정식으로 등록해야 합니다. 이 과정을 통해 Red Hat이 제공하는 공식 패키지 저장소(Repository)가 활성화됩니다.

 

4.1 Red Hat 구독 관리자(subscription-manager)로 시스템 등록

  1. 설치 후 재부팅된 터미널 화면에서, 3.3의 8단계에서 생성한 일반 관리자 계정(sudo 권한이 있는 계정)으로 로그인합니다.
  2. 다음 명령어를 입력하여 시스템 등록을 시작합니다.
  3. sudo subscription-manager register
    
  4. 명령어를 실행하면 Red Hat 계정 정보를 요구합니다.
    • Username (사용자 이름): 1단계에서 생성했던 Red Hat ID를 입력하고 Enter를 누릅니다.
    • Password (암호): 해당 ID의 비밀번호를 입력하고 Enter를 누릅니다.
    [testuser@rhel-server ~]$ sudo subscription-manager register
    [sudo] password for testuser: (sudo 비밀번호 입력)
    Registering to: subscription.rhsm.redhat.com:443/subscription
    Username: your_redhat_id (개발자 계정 ID 입력)
    Password: (개발자 계정 비밀번호 입력)
    
    The system has been registered with ID: [고유 ID...-...]
    The system's subscription-manager profile has been uploaded.
    
  5. "The system has been registered with ID: ..." 메시지가 나타나면 성공적으로 등록된 것입니다.
    • (만약 앞선 단계에서 시간 동기화(timedatectl)를 건너뛰었거나, 제대로 설정이 안됐다면 여기서 "Subscription server certificate is not valid" 같은 시간 관련 오류가 발생할 수 있습니다. 오류 발생 시 시간을 먼저 확인하세요.)
    • timedatectl set-time '현재시간’으로 맞춰주시면 됩니다.

4.2 구독 상태 및 저장소 확인

시스템이 등록되면, Red Hat Developer Subscription이 이 시스템에 자동으로 할당(Auto-attach)되어야 합니다.

 

1. 다음 명령어로 현재 구독 상태를 확인합니다.subscription-manager register 명령어가 성공적으로 실행되었다면, status가 Disabled로 보여도 SCA 덕분에 dnf를 사용하는 데 아무런 문제가 없습니다.

sudo subscription-manager status

 

2. 다음 명령어로 현재 계정에서 사용 가능한 모든 저장소 목록을 확인할 수 있습니다.

sudo subscription-manager list --available --all

 

4.3 기본 필수 패키지 설치

이제 저장소가 활성화되었으므로 dnf 명령어를 정상적으로 사용할 수 있습니다.

운영 환경 테스트에 앞서, 향후 드라이버 설치나 커널 모듈 빌드에 대비해 커널 개발 패키지(kernel-devel)커널 헤더(kernel-headers)를 설치하는 것이 좋습니다.

  1. 다음 명령어를 실행하여 현재 실행 중인 커널 버전에 정확히 맞는 패키지를 설치합니다.
    • $(uname -r): 이 명령어는 현재 시스템의 커널 버전(예: 5.14.0-427.el9.x86_64)을 자동으로 찾아 넣어주는 역할을 합니다.
    dnf install kernel-devel-$(uname -r) kernel-headers
    
    ------------------------------
    Updating Subscription Management repositories.
    Red Hat Enterprise Linux 9 for x86_64 - BaseOS (RPMs)
    34 MB/s | 46 MB 00:01
    Red Hat CodeReady Linux Builder for RHEL 9 x86_64 (RPMs)
    10 MB/s | 11 MB 00:01
    Red Hat Enterprise Linux 9 for x86_64 - AppStream (RPMs)
    37 MB/s | 50 MB 00:01
    Dependencies resolved.
    -------------------------
    ======================================================================
    ======================================================================
    ======================================================================
    =============================================================
    Installing:
    kernel-devel-matched x86_64 5.14.0-503.2
    6.1.el9_5 rhel-9-for-x86_64-appstream-rpms
    2.0 M
    kernel-headers x86_64 5.14.0-503.26.1.e
    l9_5 rhel-9-for-x86_64-appstream-rpms 3.7
    M
    Installing dependencies:
    bison x86_64 3.7.4-5.el9
  2. dnf가 Red Hat 저장소(예: rhel-9-for-x86_64-baseos-rpms)에서 패키지 정보를 다운로드하는 것을 볼 수 있습니다.
  3. 설치될 패키지 목록을 보여주며 Is this ok [y/N]: 라고 물으면, y를 입력하고 Enter를 눌러 설치를 완료합니다.
  4. 이렇게 설치하면 gcc, make 등이 dependencies에 맞게 설치 됩니다.

이제 RHEL 9.4 시스템이 Red Hat에 정식으로 등록되었으며, dnf를 통해 필요한 모든 패키지를 설치하고 업데이트할 수 있는 완벽한 테스트 서버 환경이 준비되었습니다.

 


5. 결론 및 다음 단계: Python 개발 환경 구축하기

이 가이드를 통해 Red Hat 개발자 계정 생성부터 RHEL 부팅 USB 제작, OS 설치, 그리고 subscription-manager를 이용한 시스템 등록 및 저장소 활성화까지, 안정적인 테스트 서버 구축의 전 과정을 다뤘습니다.kernel-devel과 kernel-headers 설치를 완료함으로써, 의존성으로 gcc, make 등 컴파일에 필요한 기본 도구들까지 갖춘 상태가 되었습니다.

 

여기까지 진행하셨다면 서버는 Red Hat의 공식 패키지 저장소에 연결되어, 실제 운영 환경과 동일하게 테스트할 준비가 되었습니다. 여기서 만약 운영 환경과 테스트 환경의 redhat-relase가 동일하더라도 운영 환경에는 이것 저것 설치되면서 패키지의 세부 버전이 다를 수 있습니다. 완전히 동일하게 맞추고 싶으시다면... 

 

  • (운영 서버에서) rpm -qa > prod_packages.txt로 목록을 뽑습니다.
  • (테스트 서버에서) sudo dnf install $(cat prod_packages.txt | xargs)로 설치합니다. (이 방법은 운영 서버가 dnf update를 안 하고 특정 버전에 머물러 있을 때 사용합니다.)

 

그리고 저는 서버에서 AI 모델 학습 및 애플리케이션을 개발하기 때문에 다음 포스팅에서는 이어서, 오늘 구축한 RHEL 9.4 서버 위에 본격적인 Python 개발 환경을 세팅하는 과정을 자세히 다루겠습니다. 여기에는 다음 내용이 포함됩니다.

  • NVIDIA 드라이버 설치 (GPU 인식을 위함)
  • CUDA 및 cuDNN 라이브러리 설치 (GPU 가속 컴퓨팅)
  • 아나콘다(Anaconda) 설치 (가상환경 및 패키지 관리)

이 과정을 통해 RHEL 9.4에서 GPU를 활용하는 Python 개발 환경을 구축해보겠습니다. 

긴 글 읽어주셔서 감사합니다!