본문 바로가기
개인 공부/Linux (CentOS 리눅스)

CentOS 리눅스 : 소프트웨어 관리 (9장)

by 희조당 2022. 6. 17.
728x90

■ RPM 패키지 설치

 리눅스에서 소프트웨어는 소스 코드 형식 또는 패키지 형태로 배포된다. 

 CentOS에서는 RPM 패키지를 주로 사용한다.

 

 - RPM 패키지의 특징과 구조

 <특징>

 1. 바이너리 파일 → 컴파일이 필요 없다.

 2. 관련 디렉터리로 바로 설치

 3. 일괄 삭제 가능

 4. 기존 패키지를 삭제하지 않고도 업그레이드 가능

 5. 설치 상태 검증 가능

 6. 패키지에 대한 정보 제공

 7. 의존성 때문에 관련 패키지가 없으면 설치할 수 없다.

 

 패키지 이름 : 이름 - 버전 - 릴리스 - 아키텍쳐 . 확장자 

 

 rpm : RPM 패키지를 관리

  --quiet : 오류 메시지만 출력

  --help : 도움말  /  --version : 사용중인 버전

 

 - RPM 패키지 설치하기

 rpm -i [옵션] [패키지명] : RPM 패키지를 설치

  -h : #(해시) 출력

  -v : 설치 과정에 대한 메시지 출력

  --replacefiles : 기존 파일을 덮어쓰면서라도 강제 설치

  --replacepkgs : 이미 설치되었어도 다시 설치

  --test : 설치 x, 충돌 사항만 체크

 

 RPM 패키지는 'https://pkgs.org' 또는 'https://rpmfind.net' 에서 다운 가능하다.

 일반적으로 설치할 때는 -ivh 옵션을 사용한다.

 

 - RPM 패키지 업그레이드 설치

 rpm -U [옵션] [패키지명] : RPM 패키지를 업그레이드한다.

  -h : #(해시) 출력

  -v : 설치 과정에 대한 메시지 출력

  -U : 패키지를 업그레이드하여 설치 

 

 - RPM 패키지 정보 검색

 rpm -q [옵션] : RPM 패키지의 정보를 검색

  -a : 전체 패키지 목록 출력

  -f 파일명 : 파일명을 포함하고 있는 패키지명을 출력

  -p 패키지명 : 지정 패키지의 상세 정보 출력

  -i : 자세한 정보 출력

  -R : 의존하고 있는 패키지 목록 출력

  -l : 패키지 내 파일 출력

  -s : 패키지 내 파일의 상태 출력

  -d : 문서 파일만 출력  /  c : 설정 파일만 출력

 

 - RPM 패키지 정보 검색

 rpm -e [패키지명] : RPM 패키지 삭제

■ dnf를 이용한 패키지 설치

 - dnf의 특징

 dnf는 RPM 기반으로 기존 패키지 관리자인 yum을 대체한 것이다. 

 가장 큰 특징은 패키지 의존성 문제를 해결했다는 점이다.

 <특징>

 1. 패키지의 의존성을 자동으로 해결하여 설치, 업그레이드, 삭제할 수 있다.

 2. 설치 가능한 패키지에 대한 정보가 담긴 저장소를 가진다.

 3. 저장소의 정보에 따라 패키지를 관리한다.

 

 dnf [옵션] [명령] [패키지명] : RPM 기반의 패키지를 관리

  -h : 도움말 / -y : 모든 질문에 yes / -v : 자세한 메시지 출력

  install : 설치 / upgrade : 업그레이드 / check-update : 패키지 확인 / search : 검색

  remove : 삭제 / list : 목록 확인 / info : 정보 확인

 

 - 패키지 목록 확인

 'dnf list'만 실행하면 설치되어 있는 패키지 목록과 업그레이드 가능한 패키지 목록이 출력된다.

  --all : 모든 목록 출력

  --available : 저장소에 설치 가능한 목록 출력

  --upgrades : 저장소에 업그레이드 가능한 목록 출력

  --installed : 설치된 목록 출력

  --installed 패키지명 : 설치 여부 확인

 

 - 패키지 설치

 설치 시에 의존성 있는 패키지는 자동으로 함께 설치된다.

 한 저장소에서 패키지를 찾지 못하면 자동으로 다른 미러 사이트를 검색해서 찾는다.

 

 - 패키지 업그레이드

 업그레이드할 때 패키지명을 입력하지 않으면 모든 패키지를 업그레이드한다.

 

 - 패키지 정보 검색

 dnf info [패키지명] 명령 시 이름, 버전, 릴리즈, 아키텍처, 크기, 저장소 등 모든 정보를 출력한다.

■ 파일 아카이브와 압축

 아카이브는 저장소라는 뜻이지만 리눅스에서는 파일을 묶어서 하나로 만드는 것으로 통한다.

 

 - 파일 아카이브

 tar [기능][옵션] [아카이브 파일] [파일명] : 파일과 디렉터리를 묶어 하나의 아카이브 파일을 생성

  c : 새로운 tar 파일 생성 / t : tar 파일 내용 출력  / x : tar 파일에서 원본 추출

  r : 새로운 파일 추가 / u : 수정된 파일 업데이트

  f : 파일이나 장치 지정 / v : 처리 중인 파일 정보 출력 / h : 심볼릭 링크의 원본 포함

  p : 파일 복구 시 원래 권한 유지 / j : bzip2로 압축 or 해제 / z : gzip으로 압축 or 해제

 

 - 파일 압축

 gzip [옵션] [파일명] : 파일을 압축

  -d : 압축 해제

  -l : 압축된 파일 정보를 보임

  -r : 하위 디렉터리를 탐색하여 압축

  -t : 압축 파일 검사

  -v : 압축 정보를 화면에 출력

  -9 : 최대한 압축

 

 zcat [파일명] : gzip으로 압축된 파일의 내용 출력

 gunzip [파일명] : gzip으로 압축된 파일 압축 해제

 

 bzip2 [옵션] [파일명] : 파일을 압축

  -d : 압축 해제

  -l : 압축된 파일 정보를 보임

  -t : 압축 파일 검사

  -v : 압축 정보를 화면에 출력

  --best : 최대한 압축

 

 bzcat [파일명] : 압축된 파일 내용 출력

 bunzip2 [파일명] : bzip2로 압축된 파일 압축 해제

댓글