bbbb's blog
[linux] 패키지 관리 도구 본문
yum
패키지 관리 도구
rpm
- 로컬에서 사용하는 관리 도구 (ex. 윈도우의 exe파일과 흡사함)
- 의존성 문제 있음 (선행 패키지들을 미리 설치해야 원하는 패키지 설치 가능)
yum
- 네트워크 연결 기반 (연결되야 사용할 수 있음)
- 의존성 문제 해결 (필요한 선행 패키지 자동설치)
rpm
- 패키지를 관리하는 용도로 사용
- 로컬에 파일이 있어야 설치 가능
- 파일 형식 : 패키지 이름 - 메인 버전 - 릴리즈 버전 - 아키텍처.rpm
- windows에서 .exe파일과 흡사
- 컴파일되어 설치할 실행파일, 관리파일, 등을 하나로 묶어놓은 파일
- 설치된 패키지를 모두 나열
- q옵션 : 쿼리, 특정 패키지에대한 정보를 확인할 때 사용하는 필수 옵션
- qa옵션 : 설치된 패키지를 모두 나열
- noarch : 패키지가 python, perl 같은 스크립트 같은 경우 32비트, 64 비트 상관없이 동작하므로 x86_64나 i686대신 noarch라고 표시됨.
-
rpm -qa
- rpm 파일 설치
- 파일의 위치를 알아야함
-
rpm -ivh httpd-tools-2.4.6-97.el7.centos.2.x86_64.rpm
yum
- rpm 업그레이드
- rpm 기반의 시스템을 위한 자동 업데이터 및 패키지 설치, 제거 프로그램
- rpm과 다르게 인터넷 사용 필수
- 패키지 간의 의존성 문제가 해결
- (ex. A패키지를 설치하기 전에 필요한 B패키지까지 모두 한번에 설치 가능)
- 패키지 리스트 확인
yum list | grep mariadb #결과 mariadb-libs.x86_64 1:5.5.68-1.el7 @anaconda mariadb.x86_64 1:5.5.68-1.el7 base ... - 키워드에 따라 패키지를 나열
yum search http #http가 들어간 패키지 나열 - 패키지의 정보 확인
yum info httpd #http 패키지의 정보 확인 - 지정된 경로 이름과 일치하는 패키지 설치
yum provides /var/www/html - 설치
yum install httpd #패키지명 뒤에 *을 붙이면 패키지명으로 시작하는 모든 패키지 설치- 패키지명 뒤에 *을 붙이면 패키지명으로 시작하는 모든 패키지 설치
- y 옵션을 사용하여 설치시 묻는 질문에 yes 자동 응답 (ex.yum -y install httpd)
- 패키지 업데이트
yum update - 패키지 제거
yum remove httpd
- y 옵션을 사용하여 제거시 묻는 질문에 yes 자동 응답 (ex.yum -y remove httpd) 사용권장 하지 않음. 패키지 제거시 신중하게 생각해야함
- y옵션 사용시 연관된 패키지들도 함께 지워질 수도 있는 것을 확인할 수 없다. 사용 권장 x
- 해당 패키지가 포함되어 있는 그룹 확인 가능
yum group list
- 그룹 패키지 확인 가능
yum group info
- 그룹 패키지 설치
yum group install "Development Tools"
- 패키지 설치 및 제거에 대한 요약 표시
yum history
- 저장소(리포지토리)
- /etc/yum.repos.d/
- vim /etc/yum/repos.d/CentOS-Base.repo 내용은 다음과 같다.확장자 명은 무조건 .repo
속성[base] name=CentOS-$releasever - Base mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os&infra=$infra #baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/ gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7 #released updates [updates] name=CentOS-$releasever - Updates mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates&infra=$infra #baseurl=http://mirror.centos.org/centos/$releasever/updates/$basearch/ gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7 - [id] : 아이디 지정
- name: 이름 지정, 시스템에서 인식 (대부분 id 부분과 동일)
- mirrorlist: 중간 저장소
- baseurl : 다운로드 하려는 패키지의 주소 지정
- enabled
- 동작 여부 설정
- 0 또는1, true 또는 false로 표현
- 리포지토리를 여러개 설정해 뒀을 경우 하나라도 동작하지 않을 경우 패키지 설치 불가 (ex) 3개 설정하고 2개는 맞게 , 1개 틀리게 됐을 경우 패키지 설치 x)
- 잠깐 비활성화 하는 용도로 0 설정
- gpgcheck : gpgkey 사용 여부 설정.
- 0 또는 1, true 또는 false 로 표현
- gpgkey
- gpgkey가 0으로 설정되어 있는 경우 gpgkey 입력할 필요 x
- 패키지를 설치하는 중에 사용할 키 값을 어디에 저장해 두었는지의 정보 표시
- wget으로 받아옴
- 설치시 라이센스 같은 역할
- 자동 업데이트 시에 키를 사용
dnf : 8버전 이후 패키지 관리 도구(yum이랑 비슷)
'SE > linux' 카테고리의 다른 글
| [linux] ACL (0) | 2022.01.18 |
|---|---|
| [linux] 파일 시스템 (0) | 2022.01.17 |
| [linux] 작업 스케줄링 (0) | 2022.01.17 |
| [linux] SSH (0) | 2022.01.14 |
Comments