[OS] Linux/패키지 관리

[Linux8] Local Repository 설정

Eng.yu 2024. 5. 20. 22:48

1. Linux OS 마운트

mkdir /mnt/usb

- USB(FAT32)

mount -t vfat /dev/sdX /mnt/usb

- ISO파일

mount -t iso9660 -o loop /tmp/image.iso /mnt/usb


2. repository 디렉토리 생성 후 copy
mkdir /localrepo
cp -a /mnt/usb/* /localrepo/
  

3. 기존 repo 백업

cd /etc/yum.repos.d/

mkdir bak

mv *.repo bak/


4. local.repo 파일을 생성 및 입력
vi /etc/yum.repos.d/local.repo

[BaseOS]
name=BaseOS
baseurl=file:///localrepo/BaseOS/
gpgcheck=0
Enabled=1

[AppStream]
name=AppStream
baseurl=file:///localrepo/AppStream/
gpgcheck=0
Enabled=1

 

5. yum clean 진행 후 패키지 설치

yum clean all  (Yum Repository 관련 정보를 전부 지움)

yum repolist  ("/etc/yun.repos.d" 경로에 있는 "~~~.repo"의 확장자의 파일을 읽어서 Repo에 저장)

 

yum install -y [패키지명]    //패키지 설치

 

 

** 참고사항 : 저장소를 BaseOS와 AppStream으로 분리한 이유
RockLinux뿐아니라 CentOS 8과 RHEL 8 부터는 "BaseOS", "AppStream" 2개의 저장소를 사용한다. 
저장소를 이 두가지로 분리한 이유는 자주 업데이트되는 AppStream패키지들로 인하여 기반이되는 OS플랫폼관련 패키지들에 영향을 받지않고 안정성과 유연성을 때문이다. 

- BaseOS 저장소
BaseOS 리포지토리는 운영체제의 기반이 되는 최소한의 기본기능의 코어(핵심, 필수) 패키지들로 구성된다.
즉, 커널 핵심 패키지 그룹으로 하드웨어, 가상머신, 클라우드 인스턴스, 컨테이너에서 실행 가능하도록 하는 패키지들로 구성된다. 


- AppStream(애플리케이션 스트림) 저장소
AppStream은 BaseOS의 패키지외에 어플리케이션, 소프트웨어, 종속성, 데이터베이스과 관련된 패키지들로 구성된다.
즉, Apache웹서버, Cyrus-imapd, Vim 등과 같은 패키지들, 또는 Java, PHP, Python 등과 같은 개발언어 패키지들, 그리고 MariaDB, PostgreSQL 등과 같은 DBMS 패키지들로 구성된다.  AppStream 패키지들은 BaseOS 패키지들보다 훨씬 더 많이 업데이트된다.