서버에 OS설치시 폐쇄망으로 운영되는 경우가 많기때문에 외부저장소에서 추가로 패키지를 설치할 수 없는 경우가 많다.
ISO 내용을 로컬로 복사하여 이미지에서 제공하는 패키지를 언제든 다운받을 수 있도록
local repository를 구성해보도록 하겠음
1. 리눅스 배포판 ISO 다운로드
필자는 Rocky Linux 로 진행할 것이기 때문에
https://rockylinux.org/download
위 링크에서 ISO 파일을 다운받도록 한다.
(Minimal 파일 말고 패키지가 담겨있는 DVD 파일로 다운받아야함)
2. ISO mount
VMWare workstation에서 테스트 하였기때문에 위 처럼 시디를 연결해준다.
위 이미지처럼 sr0에 SIZE 가 ISO이미지파일 크기로 되어있으면 잘 인식이 된 것.
ISO 마운트 후 확인
# mount /dev/sr0 /mnt
mount: /mnt: WARNING: device write-protected, mounted read-only.
# ls -al /mnt
total 18
dr-xr-xr-x. 7 root root 2048 Nov 14 18:30 .
dr-xr-xr-x. 18 root root 235 Jan 16 21:17 ..
dr-xr-xr-x. 4 root root 2048 Nov 14 18:30 AppStream
dr-xr-xr-x. 4 root root 2048 Nov 14 18:30 BaseOS
-r--r--r--. 1 root root 43 Nov 14 18:29 .discinfo
dr-xr-xr-x. 3 root root 2048 Nov 14 18:30 EFI
dr-xr-xr-x. 3 root root 2048 Nov 14 18:30 images
dr-xr-xr-x. 2 root root 2048 Nov 14 18:30 isolinux
-r--r--r--. 1 root root 2204 Oct 9 08:30 LICENSE
-r--r--r--. 1 root root 86 Nov 14 18:29 media.repo
-r--r--r--. 1 root root 883 Nov 14 18:30 TRANS.TBL
-r--r--r--. 1 root root 1516 Nov 14 18:29 .treeinfo
위 처럼 /mnt 아래 파일이 보이면 마운트 성공
3. 파일 내용 복사 후 repository 파일 작성
ISO 내용을 복사 할 디렉토리 생성
# mkdir /iso
숨김파일을 포함한 모든 파일내용 복사
# cp -a /mnt/. /iso/
용량이 크기때문에 복사하는데 시간이 좀 걸린다.
repo 파일 작성
# cd /etc/yum.repos.d
# mkdir repobak
# mv *.repo repobak
# vi local.repo
[ISO_AppStream]
name=Rocky8.5_AppStream
baseurl=file:///iso/AppStream/
enabled=1
gpgcheck=0
[ISO_BaseOS]
name=Rocky8.5_BaseOS
baseurl=file:///iso/BaseOS/
enabled=1
gpgcheck=0
:q
기존 repo파일 백업 후 새로 작성한다. ISO 내용을 복사했던 위치 아래 Appstream 과 BaseOS 를 경로에 맞게 작성한다.
repository 등록 확인
# dnf makecache
Rocky8.5_AppStream 60 MB/s | 7.5 MB 00:00
Rocky8.5_BaseOS 269 MB/s | 2.6 MB 00:00
Last metadata expiration check: 0:00:01 ago on Sun 16 Jan 2022 10:32:43 PM KST.
Metadata cache created.
8.x 버전은 yum / dnf 둘 다 사용 가능하다. 캐시를 재구성 한다.
4. 패키지 정상 설치 확인
# dnf install net-tools vim bash-completion
Rocky8.5_AppStream 4.2 MB/s | 4.3 kB 00:00
Rocky8.5_BaseOS 3.8 MB/s | 3.9 kB 00:00
Dependencies resolved.
=======================================================================================================================================================
Package Architecture Version Repository Size
=======================================================================================================================================================
Installing:
bash-completion noarch 1:2.7-5.el8 ISO_BaseOS 272 k
net-tools x86_64 2.0-0.52.20160912git.el8 ISO_BaseOS 321 k
vim-enhanced x86_64 2:8.0.1763-16.el8 ISO_AppStream 1.4 M
Installing dependencies:
gpm-libs x86_64 1.20.7-17.el8 ISO_AppStream 38 k
libpkgconf x86_64 1.4.2-1.el8 ISO_BaseOS 34 k
pkgconf x86_64 1.4.2-1.el8 ISO_BaseOS 37 k
pkgconf-m4 noarch 1.4.2-1.el8 ISO_BaseOS 16 k
pkgconf-pkg-config x86_64 1.4.2-1.el8 ISO_BaseOS 14 k
vim-common x86_64 2:8.0.1763-16.el8 ISO_AppStream 6.3 M
vim-filesystem noarch 2:8.0.1763-16.el8 ISO_AppStream 48 k
Transaction Summary
=======================================================================================================================================================
Install 10 Packages
Total size: 8.5 M
Installed size: 32 M
Is this ok [y/N]:
로컬 repository에서 yum / dnf 로 파일을 설치할 수 있게 되었다. 위처럼 의존성까지 자동으로 잡아준다.
RHEL, CentOS도 위 처럼 진행하면 된다.
'운영체제 > Linux' 카테고리의 다른 글
[Rocky Linux 8] Rocky Linux GUI 설치 (GNOME) (0) | 2022.01.16 |
---|---|
[Rocky Linux 8] Rocky Linux 8 패스워드 초기화 (0) | 2021.12.14 |
Rocky Linux 8 PXE 서버 구축 (2) - kickstart (0) | 2021.12.14 |
Rocky Linux 8 PXE 서버 구축(1) (2) | 2021.12.06 |