1. 개요
- Rocky Linux 9.5 환경에서 DVD ISO 파일을 활용한 로컬 저장소(Local Repository)를 구성하는 방법을 소개합니다.
- 네트워크 연결 없이도 패키지를 설치할 수 있도록 ISO를 마운트하고 YUM/DNF 저장소로 등록하는 전체 과정을 명령어 중심으로 다룹니다.
2. 버전
- Rocky Linux 9.5
3. 설명
3-1. 레포지토리(Repository)란?
- 레포지토리는 소프트웨어 패키지를 보관한 공간입니다.
- RHEL 계열에서는 YUM/DNF 명령어가 이를 통해 패키지를 설치/업데이트합니다.
- 일반적으로 인터넷에 연결된 원격 저장소를 사용하지만, 로컬 저장소도 구성 가능합니다.
3-2. 로컬 레포지토리란?
- 로컬 레포지토리는 인터넷 연결 없이도 사용할 수 있는 저장소입니다.
- 보통 ISO 파일이나 내부 서버에 저장된 패키지를 사용하여 구성합니다.
- 설치 미디어(CD/DVD/ISO)를 마운트하여 로컬 디스크에서 직접 패키지를 가져옵니다.
- 주로 다음과 같은 상황에서 유용합니다:
- 내부망/폐쇄망 서버
- 대규모 설치 자동화 환경
- 공공기관/보안망 등 인터넷 차단 시스템
3-3. .repo 파일이란?
.repo
파일은 DNF/YUM 명령어가 사용할 저장소 정보를 담는 구성 파일입니다.- 위치:
/etc/yum.repos.d/
디렉토리 내에 존재 - 각
.repo
파일은 1개 이상의 저장소 블록으로 구성되며, 각 블록은 다음 형식을 따릅니다.
항목 | 설명 |
---|---|
[repository-id] | 저장소 식별자 (예: [rocky-local] )명령어에서 이 이름으로 참조함 |
name | 저장소 이름 (설명용)dnf repolist 출력 시 보임 |
baseurl | 저장소의 실제 경로http:// , 또는 file:/// 지원예: file:///rocky95/BaseOS |
enabled | 저장소 사용 여부1 : 사용함, 0 : 사용 안 함 |
gpgcheck | GPG 서명 확인 여부1 : 확인함, 0 : 확인 안 함 |
gpgkey | 패키지 검증에 사용할 GPG 키 파일 경로예: file:///rocky95/RPM-GPG-KEY-rockyofficial |
3-4. .repo 파일 주요 항목 설명
항목 | 설명 |
---|---|
[repository-id] | 저장소 식별자 (예: [rocky-local] )명령어에서 이 이름으로 참조함 |
name | 저장소 이름 (설명용)dnf repolist 출력 시 보임 |
baseurl | 저장소의 실제 경로http:// , 또는 file:/// 지원예: file:///rocky95/BaseOS |
enabled | 저장소 사용 여부1 : 사용함, 0 : 사용 안 함 |
gpgcheck | GPG 서명 확인 여부1 : 확인함, 0 : 확인 안 함 |
gpgkey | 패키지 검증에 사용할 GPG 키 파일 경로예: file:///rocky95/RPM-GPG-KEY-rockyofficial |
3-5. /etc/fstab 란?
/etc/fstab
은 시스템 부팅 시 자동으로 마운트할 파일시스템을 정의하는 설정 파일입니다.- 로컬 저장소로 사용할 ISO 파일도 여기에 등록하면 재부팅 시마다 수동 마운트 없이 자동으로 연결됩니다.
- 한 줄에 하나의 마운트 항목을 정의하며, 각 필드는 공백 또는 탭으로 구분합니다.
3-6. /etc/fstab 항목 설명
필드 번호 | 항목 | 설명 |
---|---|---|
1 | 장치 또는 ISO 경로 | 마운트할 대상. 예: /root/Rocky-9.5-x86_64-dvd.iso |
2 | 마운트 지점 | ISO를 연결할 디렉토리. 예: /rocky95 |
3 | 파일시스템 유형 | ISO 파일은 보통 iso9660 사용 |
4 | 마운트 옵션 | loop,ro → loop 장치로 읽기 전용 마운트 |
5 | dump 여부 | 백업 도구 dump가 백업할지 여부 (보통 0 ) |
6 | fsck 순서 | 부팅 시 파일 시스템 점검 순서 (ISO의 경우 0 ) |
4. Mount
4-1. ISO 마운트 포인트 생성
# mkdir /rocky95
4-2. ISO 마운트
# mount Rocky-9.5-x86_64-dvd.iso /rocky95/
4-3. 마운트 확인
# df -Th
출력 예시:
Filesystem Type Size Used Avail Use% Mounted on<br>/dev/loop0 iso9660 11G 11G 0 100% /rocky95
5. Repository
5-1. 기존 레포지토리 백업
# mkdir /etc/yum.repos.d/repo_backup
# mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/repo_backup/
5-2. 로컬 레포지토리 추가 (BaseOS, AppStream)
# dnf config-manager --add-repo file:///rocky95/BaseOS
# dnf config-manager --add-repo file:///rocky95/AppStream
5-3. GPG 체크 비활성화
# echo "gpgcheck=0" >> /etc/yum.repos.d/rocky95_BaseOS.repo
# echo "gpgcheck=0" >> /etc/yum.repos.d/rocky95_AppStream.repo
5-4. DNF 캐시 초기화 및 메타데이터 생성
# dnf clean all
# dnf makecache
5-5. 저장소 확인 및 패키지 설치 테스트
# dnf repolist
# dnf list available net-tools
# dnf -y install net-tools
5-6. 패키지 설치 확인
# rpm -qa | grep net-tools
출력 예시:
net-tools-2.0-0.64.20160912git.el9.x86_64
5-7. fstab에 ISO 자동 마운트 등록
# echo "/root/Rocky-9.5-x86_64-dvd.iso /rocky95 iso9660 loop,ro 0 0" >> /etc/fstab
5-8. fstab에 ISO 자동 마운트 등록 확인
# cat /etc/fstab | grep rocky95
출력 예시:
/root/Rocky-9.5-x86_64-dvd.iso /rocky95 iso9660 loop,ro 0 0
5-9. 재부팅 후 마운트 상태 확인
# reboot
# df -Th
출력 예시:
Filesystem Type Size Used Avail Use% Mounted on<br>/dev/loop0 iso9660 11G 11G 0 100% /rocky95