IT/Linux

[Linux] Linux 패키지 관리(1) yum | rpm

o_zeew 2022. 3. 2. 19:59

(1) 패키지 관리 종류

(2) yum

(3) rpm

(4) binary (source)


1. 패키지 관리 종류
 REDHAT : rpm # yum
 Debian : deb # apt
 Suse : rpm # zypper
 

2. yum
   - 인터넷 상의 Repository(저장소)를 이용해서 패키지를 관리
   - 주로 배포판 개발 회사들이 관리
   - 장점
- 설치가 아주 쉽다
- 의존성 문제까지 해결해준다
- 업그레이드시 설정파일이나 데이터 파일 백업 불필요
   - 단점
- 반드시 인터넷과 DNS가 정상적으로 동작해야만 한다
- 최신 버전이 아닌 안정화된 버전
- custermizing이 불가능하다 (설치 위치나 모듈 선택 불가)

 

3. rpm
   - Binary 설치보다는 쉽다
   - 허나 의존성 문제헤서 자유롭지는 못하다
   - source를 이용해서 rpm 파일을 만들 수 있다
   - custermizing이 불가능하다
   - 업그레이드가 쉽다. 설정파일이나 데이터 파일 백업 불필요

 

4. binary(source)
   - 설치가 가장 까다롭다
   - 의존성 문제가 상당히 많다
   - custermizing이 가능하기 때문에 많이 사용
   - 최신 버전 설치 가능
   - 업그레이드시 설정 파일과 데이터 파일 백업 후 패키지 업그레이드, 
     그리고 백업한 설정 파일과 데이터 파일을 다시 copy해서 사용한다

 

 

<yum 사용해보기>

 

1. [yum install] 명령어를 사용해서 설치하기

createrepo를 설치할 때 의존성 문제를 일으키는 파일들을 확인할 수 있다 / N로 설치 취소하기

2. [yum list] 명령어를 사용하면 설치할 수 있는 패키지 파일의 목록을, [ | grep] 명령어와 함께 사용하면 특정 문자열이 

    포함된 목록만 추출할 수 있습니다

yum 설치가 가능한 목록에서 'createrepo' 가 포함된 목록

3. [yum install] 명령어로 createrepo 패키지를 다운받습니다

다운로드된 파일들의 위치

4. [yum install -y] 명령어를 사용해 패키지 다운받기

의존성 문제가 있던 파일들도 알아서 설치

5. [createrepo --version] 명령어로 설치를 확인해줍니다

 

6. [yum remove -y] 명령어를 사용해 createrepo 패키지를 삭제해봅니다

설치와는 다르게 삭제할 때는 의존성 문제를 일으키는 파일은 같이 삭제해주지 않음

7. 의존성 문제가 된 파일들도 삭제해줍니다

deltarpm을 삭제하면 python-deltarpm까지 함께 삭제
libxml2-python 삭제

 


 

 

 

<rpm 사용해보기>

1. createrepo 디렉토리를 생성 후 yum 명령어로 다운로드 했던 패키지를 옮겨줍니다

2. [rpm -Uvh] 명령어를 사용해 createrepo 패키지를 설치합니다

의존성 문제 발생

3. 의존성 문제를 해결하기 위해 의존성 문제가 생긴 파일들을 설치해줍니다

의존성 파일에 생긴 의존성 문제
옵션에 따라 설치 과정을 보여줄 수도 있고 보이지 않을 수도 있음

 

4. [createrepo --version] 명령어를 사용해 설치를 확인해줍니다

 

5. [rpm -qa] 명령어를 사용해 버전을 알 수 있습니다

 

6. [rpm -qi] 명령어를 사용해 자세한 정보를 알 수 있습니다

 

7. [rpm -ql] 명령어를 사용해 패키지와 관련된 파일과 디렉토리들을 확인할 수 있습니다

 

8. [rpm -e] 명령어를 사용하여 패키지를 삭제해줍니다

삭제할 때도 의존성 문제가 발생하면 의존성 문제를 일으킨 파일 먼저 삭제