Red Hat 8.6 오프라인 환경에 Git을 설치하려면, 먼저 인터넷이 되는 다른 컴퓨터에서 Git RPM 파일과 모든 의존성 패키지를 다운로드해야 합니다. 그 다음, 이 파일들을 오프라인 서버로 옮겨서 설치하면 됩니다.
인터넷에 연결된 RHEL 8.6 또는 호환되는 OS(Rocky Linux, CentOS 등)에서 필요한 모든 파일을 준비합니다.
패키지와 의존성을 한 번에 다운로드하기 위해 yum-utils를 설치합니다.
sudo yum install -y yum-utils
yumdownloader 명령어를 사용하여 Git과 관련된 모든 패키지를 특정 폴더(예: ~/git-offline)에 다운로드합니다. --resolve 옵션이 모든 의존성 파일을 함께 받는 핵심입니다.
# 다운로드 받을 폴더 생성
mkdir ~/git-offline
# Git과 모든 의존성 패키지 다운로드
sudo yumdownloader --resolve --destdir=~/git-offline git
오프라인 서버로 파일을 쉽게 옮기기 위해 다운로드한 폴더를 tar 파일로 압축합니다.
tar -czvf git-offline-packages.tar.gz -C ~/git-offline .
이제 git-offline-packages.tar.gz 파일을 USB나 네트워크를 통해 오프라인 서버로 복사합니다.
오프라인 RHEL 8.6 서버에서 압축 파일을 받고 설치를 진행합니다.
서버로 옮긴 압축 파일을 원하는 위치(예: /tmp/git-install)에 풀어줍니다.
# 설치 파일을 둘 폴더 생성
mkdir /tmp/git-install
# 압축 해제
tar -xzvf git-offline-packages.tar.gz -C /tmp/git-install
-rw-r--r--. 1 root root 94884 Sep 10 09:03 git-2.43.7-1.el8_10.x86_64.rpm
-rw-r--r--. 1 root root 11631124 Sep 10 09:08 git-core-2.43.7-1.el8_10.x86_64.rpm
-rw-r--r--. 1 root root 3216756 Sep 10 09:08 git-core-doc-2.43.7-1.el8_10.noarch.rpm
-rw-r--r--. 1 root root 47160 Sep 10 09:08 perl-Error-0.17025-2.el8.noarch.rpm
-rw-r--r--. 1 root root 81136 Sep 10 09:08 perl-Git-2.43.7-1.el8_10.noarch.rpm
-rw-r--r--. 1 root root 41200 Sep 10 09:08 perl-TermReadKey-2.37-7.el8.x86_64.rpm
압축을 푼 폴더로 이동한 뒤 yum 또는 dnf 명령어를 사용해 폴더 안의 모든 .rpm 파일을 설치합니다. 이 방식은 시스템이 알아서 의존성을 확인하며 설치해줍니다.
cd /tmp/git-install
sudo yum localinstall *.rpm -y
======================================================
[appuser@appdev git-rpms]$ sudo dnf install ./*.rpm -y
Failed to set locale, defaulting to C.UTF-8
Updating Subscription Management repositories.
Unable to read consumer identity
This system is not registered with an entitlement server. You can use subscription-manager to register.
Package git-core-2.43.7-1.el8_10.x86_64 is already installed.
Package git-core-doc-2.43.7-1.el8_10.noarch is already installed.
Dependencies resolved.
=========================================================================================================================
Package Architecture Version Repository Size
=========================================================================================================================
Installing:
git x86_64 2.43.7-1.el8_10 @commandline 93 k
perl-Carp noarch 1.42-396.el8 @commandline 30 k
perl-Data-Dumper x86_64 2.167-399.el8 @commandline 58 k
perl-Digest noarch 1.17-395.el8 @commandline 27 k
perl-Digest-MD5 x86_64 2.55-396.el8 @commandline 37 k
perl-Encode x86_64 4:2.97-3.el8 @commandline 1.5 M
perl-Errno x86_64 1.28-423.el8_10 @commandline 77 k
perl-Error noarch 1:0.17025-2.el8 @commandline 46 k
perl-Exporter noarch 5.72-396.el8 @commandline 34 k
perl-File-Path noarch 2.15-2.el8 @commandline 38 k
perl-File-Temp noarch 0.230.600-1.el8 @commandline 63 k
perl-Getopt-Long noarch 1:2.50-4.el8 @commandline 63 k
perl-Git noarch 2.43.7-1.el8_10 @commandline 79 k
perl-HTTP-Tiny noarch 0.074-3.el8 @commandline 59 k
perl-IO x86_64 1.38-423.el8_10 @commandline 143 k
perl-IO-Socket-IP noarch 0.39-5.el8 @commandline 47 k
perl-IO-Socket-SSL noarch 2.066-4.module+el8.3.0+6446+594cad75 @commandline 298 k
perl-MIME-Base64 x86_64 3.15-396.el8 @commandline 31 k
perl-Mozilla-CA noarch 20160104-7.module+el8.3.0+6498+9eecfe51 @commandline 15 k
perl-Net-SSLeay x86_64 1.88-2.module+el8.6.0+13392+f0897f98 @commandline 379 k
perl-PathTools x86_64 3.74-1.el8 @commandline 90 k
perl-Pod-Escapes noarch 1:1.07-395.el8 @commandline 20 k
perl-Pod-Perldoc noarch 3.28-396.el8 @commandline 88 k
perl-Pod-Simple noarch 1:3.35-395.el8 @commandline 213 k
perl-Pod-Usage noarch 4:1.69-395.el8 @commandline 34 k
perl-Scalar-List-Utils x86_64 3:1.49-2.el8 @commandline 68 k
perl-Socket x86_64 4:2.027-3.el8 @commandline 59 k
perl-Storable x86_64 1:3.11-3.el8 @commandline 98 k
perl-Term-ANSIColor noarch 4.06-396.el8 @commandline 46 k
perl-Term-Cap noarch 1.17-395.el8 @commandline 23 k
perl-TermReadKey x86_64 2.37-7.el8 @commandline 40 k
perl-Text-ParseWords noarch 3.30-395.el8 @commandline 18 k
perl-Text-Tabs+Wrap noarch 2013.0523-395.el8 @commandline 24 k
perl-Time-Local noarch 1:1.280-1.el8 @commandline 34 k
perl-URI noarch 1.73-3.el8 @commandline 116 k
perl-Unicode-Normalize x86_64 1.25-396.el8 @commandline 82 k
perl-constant noarch 1.33-396.el8 @commandline 25 k
perl-interpreter x86_64 4:5.26.3-423.el8_10 @commandline 6.3 M
perl-libnet noarch 3.11-3.el8 @commandline 121 k
perl-libs x86_64 4:5.26.3-423.el8_10 @commandline 1.6 M
perl-macros x86_64 4:5.26.3-423.el8_10 @commandline 73 k
perl-parent noarch 1:0.237-1.el8 @commandline 20 k
perl-podlators noarch 4.11-1.el8 @commandline 118 k
perl-threads x86_64 1:2.21-2.el8 @commandline 61 k
perl-threads-shared x86_64 1.58-2.el8 @commandline 48 k
Transaction Summary
=========================================================================================================================
Install 45 Packages
Total size: 12 M
Installed size: 36 M
Downloading Packages:
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
Preparing : 1/1
Installing : perl-Digest-1.17-395.el8.noarch 1/45
Installing : perl-Digest-MD5-2.55-396.el8.x86_64 2/45
Installing : perl-Data-Dumper-2.167-399.el8.x86_64 3/45
Installing : perl-libnet-3.11-3.el8.noarch 4/45
Installing : perl-URI-1.73-3.el8.noarch 5/45
Installing : perl-Time-Local-1:1.280-1.el8.noarch 6/45
Installing : perl-Mozilla-CA-20160104-7.module+el8.3.0+6498+9eecfe51.noarch 7/45
Installing : perl-Pod-Escapes-1:1.07-395.el8.noarch 8/45
Installing : perl-IO-Socket-IP-0.39-5.el8.noarch 9/45
Installing : perl-Net-SSLeay-1.88-2.module+el8.6.0+13392+f0897f98.x86_64 10/45
Installing : perl-IO-Socket-SSL-2.066-4.module+el8.3.0+6446+594cad75.noarch 11/45
Installing : perl-Term-ANSIColor-4.06-396.el8.noarch 12/45
Installing : perl-File-Temp-0.230.600-1.el8.noarch 13/45
Installing : perl-Term-Cap-1.17-395.el8.noarch 14/45
Installing : perl-Pod-Simple-1:3.35-395.el8.noarch 15/45
Installing : perl-HTTP-Tiny-0.074-3.el8.noarch 16/45
Installing : perl-podlators-4.11-1.el8.noarch 17/45
Installing : perl-Pod-Perldoc-3.28-396.el8.noarch 18/45
Installing : perl-Text-ParseWords-3.30-395.el8.noarch 19/45
Installing : perl-Pod-Usage-4:1.69-395.el8.noarch 20/45
Installing : perl-MIME-Base64-3.15-396.el8.x86_64 21/45
Installing : perl-Storable-1:3.11-3.el8.x86_64 22/45
Installing : perl-Getopt-Long-1:2.50-4.el8.noarch 23/45
Installing : perl-Errno-1.28-423.el8_10.x86_64 24/45
Installing : perl-Socket-4:2.027-3.el8.x86_64 25/45
Installing : perl-Encode-4:2.97-3.el8.x86_64 26/45
Installing : perl-Exporter-5.72-396.el8.noarch 27/45
Installing : perl-macros-4:5.26.3-423.el8_10.x86_64 28/45
Installing : perl-parent-1:0.237-1.el8.noarch 29/45
Installing : perl-Scalar-List-Utils-3:1.49-2.el8.x86_64 30/45
Installing : perl-constant-1.33-396.el8.noarch 31/45
Installing : perl-PathTools-3.74-1.el8.x86_64 32/45
Installing : perl-File-Path-2.15-2.el8.noarch 33/45
Installing : perl-IO-1.38-423.el8_10.x86_64 34/45
Installing : perl-Text-Tabs+Wrap-2013.0523-395.el8.noarch 35/45
Installing : perl-threads-shared-1.58-2.el8.x86_64 36/45
Installing : perl-threads-1:2.21-2.el8.x86_64 37/45
Installing : perl-Unicode-Normalize-1.25-396.el8.x86_64 38/45
Installing : perl-libs-4:5.26.3-423.el8_10.x86_64 39/45
Installing : perl-Carp-1.42-396.el8.noarch 40/45
Installing : perl-interpreter-4:5.26.3-423.el8_10.x86_64 41/45
Installing : perl-Error-1:0.17025-2.el8.noarch 42/45
Installing : perl-TermReadKey-2.37-7.el8.x86_64 43/45
Installing : perl-Git-2.43.7-1.el8_10.noarch 44/45
Installing : git-2.43.7-1.el8_10.x86_64 45/45
Running scriptlet: git-2.43.7-1.el8_10.x86_64 45/45
Verifying : git-2.43.7-1.el8_10.x86_64 1/45
Verifying : perl-Carp-1.42-396.el8.noarch 2/45
Verifying : perl-constant-1.33-396.el8.noarch 3/45
Verifying : perl-Data-Dumper-2.167-399.el8.x86_64 4/45
Verifying : perl-Digest-1.17-395.el8.noarch 5/45
Verifying : perl-Digest-MD5-2.55-396.el8.x86_64 6/45
Verifying : perl-Encode-4:2.97-3.el8.x86_64 7/45
Verifying : perl-Errno-1.28-423.el8_10.x86_64 8/45
Verifying : perl-Error-1:0.17025-2.el8.noarch 9/45
Verifying : perl-Exporter-5.72-396.el8.noarch 10/45
Verifying : perl-File-Path-2.15-2.el8.noarch 11/45
Verifying : perl-File-Temp-0.230.600-1.el8.noarch 12/45
Verifying : perl-Getopt-Long-1:2.50-4.el8.noarch 13/45
Verifying : perl-Git-2.43.7-1.el8_10.noarch 14/45
Verifying : perl-HTTP-Tiny-0.074-3.el8.noarch 15/45
Verifying : perl-interpreter-4:5.26.3-423.el8_10.x86_64 16/45
Verifying : perl-IO-1.38-423.el8_10.x86_64 17/45
Verifying : perl-IO-Socket-IP-0.39-5.el8.noarch 18/45
Verifying : perl-IO-Socket-SSL-2.066-4.module+el8.3.0+6446+594cad75.noarch 19/45
Verifying : perl-libnet-3.11-3.el8.noarch 20/45
Verifying : perl-libs-4:5.26.3-423.el8_10.x86_64 21/45
Verifying : perl-macros-4:5.26.3-423.el8_10.x86_64 22/45
Verifying : perl-MIME-Base64-3.15-396.el8.x86_64 23/45
Verifying : perl-Mozilla-CA-20160104-7.module+el8.3.0+6498+9eecfe51.noarch 24/45
Verifying : perl-Net-SSLeay-1.88-2.module+el8.6.0+13392+f0897f98.x86_64 25/45
Verifying : perl-parent-1:0.237-1.el8.noarch 26/45
Verifying : perl-PathTools-3.74-1.el8.x86_64 27/45
Verifying : perl-Pod-Escapes-1:1.07-395.el8.noarch 28/45
Verifying : perl-podlators-4.11-1.el8.noarch 29/45
Verifying : perl-Pod-Perldoc-3.28-396.el8.noarch 30/45
Verifying : perl-Pod-Simple-1:3.35-395.el8.noarch 31/45
Verifying : perl-Pod-Usage-4:1.69-395.el8.noarch 32/45
Verifying : perl-Scalar-List-Utils-3:1.49-2.el8.x86_64 33/45
Verifying : perl-Socket-4:2.027-3.el8.x86_64 34/45
Verifying : perl-Storable-1:3.11-3.el8.x86_64 35/45
Verifying : perl-Term-ANSIColor-4.06-396.el8.noarch 36/45
Verifying : perl-Term-Cap-1.17-395.el8.noarch 37/45
Verifying : perl-TermReadKey-2.37-7.el8.x86_64 38/45
Verifying : perl-Text-ParseWords-3.30-395.el8.noarch 39/45
Verifying : perl-Text-Tabs+Wrap-2013.0523-395.el8.noarch 40/45
Verifying : perl-threads-1:2.21-2.el8.x86_64 41/45
Verifying : perl-threads-shared-1.58-2.el8.x86_64 42/45
Verifying : perl-Time-Local-1:1.280-1.el8.noarch 43/45
Verifying : perl-Unicode-Normalize-1.25-396.el8.x86_64 44/45
Verifying : perl-URI-1.73-3.el8.noarch 45/45
Installed products updated.
Installed:
git-2.43.7-1.el8_10.x86_64
perl-Carp-1.42-396.el8.noarch
perl-Data-Dumper-2.167-399.el8.x86_64
perl-Digest-1.17-395.el8.noarch
perl-Digest-MD5-2.55-396.el8.x86_64
perl-Encode-4:2.97-3.el8.x86_64
perl-Errno-1.28-423.el8_10.x86_64
perl-Error-1:0.17025-2.el8.noarch
perl-Exporter-5.72-396.el8.noarch
perl-File-Path-2.15-2.el8.noarch
perl-File-Temp-0.230.600-1.el8.noarch
perl-Getopt-Long-1:2.50-4.el8.noarch
perl-Git-2.43.7-1.el8_10.noarch
perl-HTTP-Tiny-0.074-3.el8.noarch
perl-IO-1.38-423.el8_10.x86_64
perl-IO-Socket-IP-0.39-5.el8.noarch
perl-IO-Socket-SSL-2.066-4.module+el8.3.0+6446+594cad75.noarch
perl-MIME-Base64-3.15-396.el8.x86_64
perl-Mozilla-CA-20160104-7.module+el8.3.0+6498+9eecfe51.noarch
perl-Net-SSLeay-1.88-2.module+el8.6.0+13392+f0897f98.x86_64
perl-PathTools-3.74-1.el8.x86_64
perl-Pod-Escapes-1:1.07-395.el8.noarch
perl-Pod-Perldoc-3.28-396.el8.noarch
perl-Pod-Simple-1:3.35-395.el8.noarch
perl-Pod-Usage-4:1.69-395.el8.noarch
perl-Scalar-List-Utils-3:1.49-2.el8.x86_64
perl-Socket-4:2.027-3.el8.x86_64
perl-Storable-1:3.11-3.el8.x86_64
perl-Term-ANSIColor-4.06-396.el8.noarch
perl-Term-Cap-1.17-395.el8.noarch
perl-TermReadKey-2.37-7.el8.x86_64
perl-Text-ParseWords-3.30-395.el8.noarch
perl-Text-Tabs+Wrap-2013.0523-395.el8.noarch
perl-Time-Local-1:1.280-1.el8.noarch
perl-URI-1.73-3.el8.noarch
perl-Unicode-Normalize-1.25-396.el8.x86_64
perl-constant-1.33-396.el8.noarch
perl-interpreter-4:5.26.3-423.el8_10.x86_64
perl-libnet-3.11-3.el8.noarch
perl-libs-4:5.26.3-423.el8_10.x86_64
perl-macros-4:5.26.3-423.el8_10.x86_64
perl-parent-1:0.237-1.el8.noarch
perl-podlators-4.11-1.el8.noarch
perl-threads-1:2.21-2.el8.x86_64
perl-threads-shared-1.58-2.el8.x86_64
Complete!
[appuser@appdev git-rpms]$
만약 yum 명령이 익숙하지 않다면 sudo dnf install ./*.rpm -y 명령어를 사용해도 똑같이 작동합니다.
설치가 잘 되었는지 Git 버전을 확인하여 마무리합니다.
git --version
=========================
[appuser@appdev git-rpms]$ git --version
git version 2.43.7
[appuser@appdev git-rpms]$
명령어를 실행했을 때 git version 2.27.0과 같이 버전 정보가 나오면 성공적으로 설치된 것입니다