본문 바로가기
리눅스/Part3. Ch04. 소프트웨어 설치 및 관리

01. 리눅스 패키지 시스템 (rpm, dpkg)

by Engineer-Lee 2022. 7. 20.
반응형

전통적 방식 프로그램 설치

  • 코드를 빌드해서 설치 후 사용
    $ wget https://nginx.org/download/nginx-1.20.1.tar.gz
    $ tar zxf nginx-1.20.1.tar.gz
    $ cd nginx-1.20.1
    $ ./configure
    $ make
    $ sudo make install 
    -> 빌드를 위한 각종 라이브러리 설치가 필요함. 직접 프로그램 실행 관리를 해야 함

 

소프트웨어 관리 작업을 단순화하고 편리하게

-> 패키징 시스템(패키지 매니저) 등장

  • 패키지 시스템의 패키지 구성
    -> 컴파일된 바이너리, 의존성 정보, 환경설정 템플릿 등 소프트웨어 실행에 필요한 모든 파일이 포함

 

리눅스 패키지 관리 시스템

  • 저수준
    RPM    <- RedHat 계열(RedHat, CentOS, Amazon Linux 등)
    deb      <- Debian 계열(Debian, Ubuntu 등)
  • 고수준 (다음 강의)
    yum     <- RedHat 계열
    apt       <- Debian 계열
    zypper <- SUSE 계열

 

 

저수준 패키지 관리 시스템

rpm

  • 패키지를 설치, 검증, 패키지 상태 확인
  • 옵션
    -i: 설치, -U: 업그레이드, -e: 삭제, -q: 질의
    예) rpm -qa
        -> 시스템에 설치된 모든 패키지 나열
    예) rpm -U 패키지명.rpm 
        -> 패키지 업그레이드 하지만, 종속성 관계로 실패하는 경우 많음
            (예, 다른 패키지 영향을 고려해 업그레이드를 허용하지 않음)
        -> --force 옵션으로 강제적인 업그레이드는 또 다른 문제를 발생…

dpkg

  • 데비안 패키지 설치
  • 옵션
    -l : 설치된 패키지 목록, --install: 설치, --remove: 삭제
    예) $ sudo dpkg --install 패키지명.deb
    예) $ dpkg -l cp*
반응형