본문 바로가기

지식창고/Linux

[리눅스/Linux] yum 로컬 저장소 경로로 변경하기

반응형

* CentOS 7 버전을 기준으로 작성된 내용입니다.

* iso 파일 버전이 상이할 수 있습니다!

 

#1. iso 파일 다운로드
  • CentOS 다운로드 사이트(https://www.centos.org/download/)로 접속합니다.
  • 다운로드하으려는 iso 파일 정보를 확인하여 클릭합니다.

  • 미러링 중 하나를 선택합니다. 어떤 것을 선택해도 상관없습니다. 저는 카카오를 선택하였습니다.

  • 원하는 iso 파일을 선택하고 다운로드 받습니다. 클릭하면 다운로드할 수 있습니다.

#2. iso 파일 서버에 업로드
  • 파일질라와 같은 SFTP 등을 통해 서버에 업로드해줍니다.
#3. 마운트
  • 업로드한 iso 파일을 원하는 디렉터리에 마운트 해줍니다.
  • 마운트 한 디렉토리를 검색해보면 아래와 같이 출력됩니다.
# mount -o loop /opt/CentOS-7-x86_64-DVD-1908.iso /etc/yum.repos.d/mnt
mount: /dev/loop0 is write-protected, mounting read-only

# cd /etc/yum.repos.d/mnt 
# ll
total 694
-rw-rw-r-- 1 root root 14 Sep 10 2019 CentOS_BuildTag
drwxr-xr-x 3 root root 2048 Sep 6 2019 EFI
-rw-rw-r-- 1 root root 227 Aug 30 2017 EULA
-rw-rw-r-- 1 root root 18009 Dec 10 2015 GPL
drwxr-xr-x 3 root root 2048 Sep 10 2019 images
drwxr-xr-x 2 root root 2048 Sep 10 2019 isolinux
drwxr-xr-x 2 root root 2048 Sep 6 2019 LiveOS
drwxrwxr-x 2 root root 671744 Sep 12 2019 Packages
drwxrwxr-x 2 root root 4096 Sep 12 2019 repodata
-rw-rw-r-- 1 root root 1690 Dec 10 2015 RPM-GPG-KEY-CentOS-7
-rw-rw-r-- 1 root root 1690 Dec 10 2015 RPM-GPG-KEY-CentOS-Testing-7
-r--r--r-- 1 root root 2883 Sep 12 2019 TRANS.TBL
#4. iso 파일 복사하기
  • 마운트한 상태로 진행하여도 되나 iso 파일 크기 등 때문에 필요한 파일만 따로 복사했습니다.
  • 파일 중 Packages와 repodata 디렉터리만 복사해서 진행합니다.
  • 복사할 디렉토리 생성 및  Packages와 repodata 디렉토리 복사
# mkdir /etc/yum.repos.d/CentOS7 
# cp -rf /etc/yum.repos.d/mnt/Packages /etc/yum.repos.d/CentOS7/
# cp -rf /etc/yum.repos.d/mnt/repodata /etc/yum.repos.d/CentOS7/
#5. 마운트 해제 및 iso 파일 삭제
# umount /etc/yum.repos.d/mnt

# rm /opt/CentOS-7-x86_64-DVD-1908.iso
#6. 기존 파일 백업 및 새로운 repo 파일 생성
  • 기존 yum.repos 파일들을 백업합니다.
# mkdir /etc/yum.repos.d/backup

# mv CentOS-*.repo /etc/yum.repos.d/backup/
  • 새로운 repo 파일을 생성해줍니다.
# vi /etc/yum.repos.d/CentOS7-local.repo

[CentOS7-local-repo]
name=CentOS
baseurl=file:///etc/yum.repos.d/CentOS7/
gpgcheck=0
enabled=1
#7. yum 명령어를 사용 테스트
  • yum 명령어를 사용해서 아래와 같이 잘 되는지 테스트를 해봅니다.
# yum clean all
Loaded plugins: fastestmirror
Cleaning repos: CentOS7-local-repo
Cleaning up list of fastest mirrors
Other repos take up 19 M of disk space (use --verbose for details)

# yum repolist
Loaded plugins: fastestmirror
Determining fastest mirrors
CentOS7-local-repo | 3.6 kB 00:00:00
(1/2): CentOS7-local-repo/group_gz | 165 kB 00:00:00
(2/2): CentOS7-local-repo/primary_db | 3.2 MB 00:00:00
repo id                  repo name                     status
CentOS7-local-repo  CentOS Local Repository    4,067
repolist: 4,067

 

반응형