Obsidian/Recognition/Programing/Linux/RHEL9/local repository 구성.md

3.4 KiB

  • 패키지 다운로드(Mirror 복사)

# KAKAO Mirror 설정
vi /etc/yum.repos.d/kakao.repo

	[kakao-base]
	name=kakao - Base
	baseurl=http://mirror.kakao.com/centos/$releasever/os/$basearch/
	gpgcheck=1
	enabled=1
	gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
	
	[kakao-updates]
	name=kakao - Updates
	baseurl=http://mirror.kakao.com/centos/$releasever/updates/$basearch
	gpgcheck=1
	enabled=1
	gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
	
	[kakao-extras]
	name=kakao - Extras
	baseurl=http://mirror.kakao.com/centos/$releasever/extras/$basearch
	gpgcheck=0
	gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
	
	[kakao-centosplus]
	name=kakao - Plus
	baseurl=http://mirror.kakao.com/centos/$releasever/centosplus/$basearch
	gpgcheck=1
	enabled=0
	gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

# 현재 등록된 repository id와 이름 등을 확인
sudo yum repolist

# 패키지 다운로드
reposync -glmn --repoid='kakao-*' --download-metadata --download_path=/tmp/kakaomirror

--------------------------------------------------------------------
-g: 다운로드 후, GPG 검사가 실패한 파일을 삭제  
-l: Yum Plugin 지원을 활성화  
-m: comps.xml도 다운로드 합니다. (Groupinstall 명령어 지원을 위함)  
-n: 각 패키지의 최신 패키지만 다운로드  
-d: 다운로드한 패키지가 로컬에 저장된 패키지보다 최신 버전인 경우, 로컬에 저장되어 있던 패키지 삭제  
--repoid(= -r): Repository ID (와일드 카드 지원)  
--download-metadata: 모든 메타데이터 다운로드  
--download_path(= -p): 파일들을 다운로드할 위치
--------------------------------------------------------------------


# createrepo 설치
yum install -y createrepo

# repodata 생성 (다운로드 받은 경로=/tmp/kakaomirror)
cd /tmp/kakaomirror
createrepo .


  • 패키지 다운로드2(로컬에 다운로드)
yum install yum-utils

# 다운로드
yumdownloader --downloadonly --resolve gcc

yumdownloader --downloadonly --destdir=/tmp/tibero_pac --resolve gcc gcc-c++ libgcc libstdc++ libstdc++-devel compat-libstdc++ libaio libaio-devel pstack libpthread librt libm libaio libdl libnsl.so.1 libncurses.so.5

yumdownloader --downloadonly --destdir=/tmp/tibero_pac --resolve compat-libstdc++-33

  • ISO이미지 만들기

# genisoimage 설치
yum install -y genisoimage

# ISO 생성 genisoimage -r -J -o [ISO파일 이름] [Source경로]
genisoimage -r -J -o /tmp/kakaoISO.iso /tmp/tibero_pac

  • ISO파일 마운트

# 작업용 폴더 생성
mkdir /media/iso 

# 마운트
mount -o loop /tmp/kakaoISO.iso /media/iso/

## 언마운트
umount /media/iso


# 마운트됨을 확인
ls -l /media/iso

# 부팅시 자동으로 마운트 되도록 /etc/fstab 에 다음 내용을 추가
/var/iso-file/CentOS-6.10-x86_64-bin-DVD1.iso /var/www/repos/centos/iso/ iso9660 loop 0 0
/media/kakaoISO.iso /media/iso iso9660 loop 0 0 
  • 다른 PC에서 local repo 설정
# reposync로 다운로드 했던 경로를 압축해서 갖고 가서 repo를 추가

# repo 추가
vi /etc/yum.repos.d/kakao.repo
	[kakaomirror]
	name=Kakao Mirror
	baseurl=file:///tmp/kakaomirror/  # repodata폴더가 있는 경로까지
	gpgcheck=0
	enabled=1
	
sudo yum repolist

# 다른 repository를 모두 disable하고, offline-myrepo만 활성화해서 설치하는 옵션)
yum --disablerepo="*" --enablerepo=tibero_pac list available
yum --disablerepo="*" --enablerepo=tibero_pac install gcc