[Linux]VM에 Local Repository(지역 저장소) 등록하는 방법
Linux에 여러가지 패키지를 설치하려면 Repository가 등록되어 있어야 합니다. 그런데 인터넷 연결이 안되는 환경에서도 패키지를 설치해야 할 경우가 있습니다. 보통 사내 시스템이 설치된 운영 서버(Application 서버, Database 서버)는 보안을 이유도 인터넷 연결을 차단하도록 방화벽이 설정되어 있습니다. Local Repository를 등록해서 추가 패키지를 설치하는 방법을 설명토록 하겠습니다. 여기서는 VirtualBox에 설치된 VM을 사용합니다.
1. Linux 설치 DVD iso 파일을 “컨트롤러: IDE”에 등록합니다.
- iso 파일을 다른 VM에서도 사용하고 있다면 ftp로 iso 파일을 VM에 업로드하셔도 됩니다.
2. 등록된 iso파일이 장치로 인식되었는지 확인합니다.(/dev/sr0)
- 1단계에서 iso파일을 업로드하셨다면 파일 위치를 확인합니다.
[root@centos8 ~]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 30G 0 disk ├sda1 8:1 0 1G 0 part /boot └sda2 8:2 0 29G 0 part ├cs-root 253:0 0 26G 0 lvm / └cs-swap 253:1 0 3G 0 lvm [SWAP] sr0 11:0 1 11.5G 0 rom /run/media/root/CentOS-Stream-8-BaseOS-x86_64
3. 디렉토리를 생성(/mnt/cdrom)하고 “/dev/sr0″를 마운트시킵니다
- 1단계에서 iso파일을 업로드하셨다면 마운팅할 때 “/dev/sr0” 대신에 “/path/iso파일명”을 사용하면 됩니다.
[root@centos8 ~]# mkdir /mnt/cdrom [root@centos8 ~]# umount /dev/sr0 [root@centos8 ~]# mount -t iso9660 -o ro /dev/sr0 /mnt/cdrom lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 30G 0 disk ├sda1 8:1 0 1G 0 part /boot └sda2 8:2 0 29G 0 part ├cs-root 253:0 0 26G 0 lvm / └cs-swap 253:1 0 3G 0 lvm [SWAP] sr0 11:0 1 11.5G 0 rom /mnt/cdrom
- /mnt/cdrom/의 하위 디렉토리인 AppStream과 BaseOS를 Local Repository로 등록합니다.
4. Local Repository 등록파일을 생성합니다.
- rename 명령어로 기존에 등록되어 있는 다른 Repository 파일을 백업합니다.
[root@centos8 ~]# cd /etc/yum.repos.d/ [root@centos8 ~]# rename .repo .repo.bak *.repo [root@centos8 ~]# # vi localrepo.repo [LocalAppStream] name=CentOS8 AppStream baseurl=file:///mnt/cdrom/AppStream enabled=1 gpgcheck=0<.br /> [LocalBaseOS] name=CentOS8 BaseOS baseurl=file:///mnt/cdrom/BaseOS enabled=1 gpgcheck=0
5. `dnf repolist` 명령으로 등록한 Local Repository를 확인합니다.
- 기존에 등록된 Repository는 삭제되고 Local Repository만 출력됩니다.
[root@centos8 ~]# dnf repolist repo id repo name LocalAppStream CentOS8 AppStream LocalBaseOS CentOS8 BaseOS