4장. 서버를 구축하는 데 알아야 할 필수 개념과 명령 (9) - 프로그램 설치를 위한 RPM 명령

728x90
반응형

출처 : https://www.youtube.com/watch?v=4dBIHJxVojI&list=PLVsNizTWUw7FqN2gq79Cb3R6qkS7mqOJk&index=21

 

강의 목표

리눅스 시스템을 관리할 때 관리자 측면에서 사용해야 할 명령을 알아본다.

 

RPM(Redhat Package Manager)

  • Redhat 사에서 개발한 Windows의 Setup.exe와 비슷하게 프로그램을 설치한 후 바로 실행할 수 있는 설치 파일
  • 확장명은 *.rpm이며, 이를 패키지(Package) 라고 부른다.

 

파일의 의미

Rocky Linux 9.0 DVD ISO 파일을 연결하면 자동 마운트되는 /run/media/root/Rocky-9-0-x86_64/BaseOS/Packages/ 디렉토리에는 많은 rpm이 존재한다. 압축 프로그램인 gzip을 살펴본다.

 

rpm 파일의 형식은 패키지에 따라 조금 다르지만 일반적으로 다음과 같은 형태로 이루어져있다.

 

패키지 이름(gzip) - 버전(1.10) - 릴리즈번호(9).Rocky 리눅스 버전(el9).아키텍처(x86_64).rpm

 

  • 패키지 이름 : 패키지(프로그램)의 이름
  • 버전 : 대체로 2자리 또는 3자리수로 구성. 주 버전, 부 버전, 패치 버전 순서이며 숫자가 높을수록 최신 버전이다.
  • 릴리즈 번호 : 문제점을 개선할 때마다 붙는 번호
  • Rocky Linux 번호 : Rocky Linux의 버전을 의미
  • 아키텍처 : x86 계열의 64비트 CPU를 의미. 이 파일을 설치할 수 있는 CPU를 의미한다.

 

자주 사용하는 rpm 명령 옵션

  • 설치
    • rpm -Uvh 패키지파일 이름.rpm
    • U(대문자) : 패키지 설치 / 업데이트. 패키지가 설치되어있지 않으면 설치하고, 설치되어있으면 업데이트한다.
    • v : 설치 과정을 확인한다.
    • h : 설치 진행 과정을 # 기호를 붙여 화면에 출력한다.

 

  • 삭제
    • rpm -e 패키지 이름
    • e : erase의 약자

 

  • 이미 설치된 패키지 조회
    • rpm -qa 패키지 이름 : 시스템에 패키지가 설치되었는지 확인
    • rpm -qf 파일의 절대경로 : 이미 설치된 파일이 어느 패키지에 포함된 것인지 확인
    • rpm -ql 패키지 이름 : 특정 패키지에 어떤 파일이 포함되었는지 확인
    • rpm -qi 패키지 이름 : 설치된 패키지의 상세 정보

 

  • 아직 설치되지 않은 rpm 파일 조회
    • rpm -qlp 패키지 파일 이름.rpm : 패키지 파일에 어떤 파일이 포함되었는지 확인
    • rpm -qip 패키지 파일 이름.rpm : 패키지 파일의 상세 정보

 

RPM의 단점

  • 의존성 문제
    • A 패키지를 설치하기 위해서 B 패키지가 필요할 경우, RPM으로는 해결이 까다롭다는 문제점 존재 (B를 설치하기 위해 C 패키지가 또 필요할 수도 있음)
    • 이를 해결하기 위해 DNF 또는 YUM이 등장함

 

rpm 패키지 설치 실습

 

실습 목표

  • RPM 명렁어의 사용법을 익힌다.
  • RPM 파일의 의존성 문제를 파악한다.

 

실습

 

 

Device status에서 connected와 connected at power on을 체크하고 rocky linux ISO 파일을 마운트한다.

 

 

rpm -qi mc 명령을 통해 mc라는 패키지가 설치되어있는지 확인한다. 설치되어있지 않으므로 mc 패키지를 설치해보자.

 

 

mc 패키지를 설치하기 위해 Packages의 m 디렉토리로 이동한다.

 

ls -l mc-* 명령을 실행하면 mc-4.8~~.rpm 파일이 설치가 가능한 파일이라는 것을 확인할 수 있다.

 

 

설치되어있지 않으므로 rpm -qip mc~~.rpm 명령을 실행한다. 그러면 이 rpm이 어떤 패키지인지에 대한 설명이 나타나게 된다.

 

 

rpm -Uvh 명령을 통해 mc 패키지를 설치한다.

 

 

rpm -qi mc 명령을 통해 mc 패키지의 정보를 볼 수 있다. 여기서 주의할 점은 -qip 명령에서는 패키지의 파일 이름이 아닌 패키지의 이름을 작성해야한다는 것이다.

 

 

mc를 실행하면 파일을 쉽게 접근 가능하다.

 

exit 명령을 입력하면 빠져나오게 된다.

 

 

rpm -e mc 명령으로 mc 패키지를 삭제한다.

 

 

rpm의 의존성 문제를 확인해보자.

 

mysql-errmsg rpm을 설치하면 의존성 에러(Failed dependencies) 메시지가 발생하게된다. 즉, errmsg~~rpm을 설치하려면 common~~이 필요하다는 의미이다.

 

다음 장에서 rpm의 의존성 문제를 해결하기 위해 등장한 DNF 명령을 알아보자.

 

 

728x90
반응형