> 시스템 튜토리얼 > 리눅스 > apt, yum, dnf, pkg의 기능과 특성을 분석합니다.

apt, yum, dnf, pkg의 기능과 특성을 분석합니다.

WBOY
풀어 주다: 2024-01-04 20:25:44
앞으로
675명이 탐색했습니다.
소개 대부분의 최신 Unix 계열 운영 체제는 소프트웨어 검색 및 설치를 위한 중앙 집중식 메커니즘을 제공합니다. 소프트웨어는 일반적으로 리포지토리에 저장되고 패키지를 통해 배포됩니다. 패키지를 처리하는 작업을 패키지 관리라고 합니다. 패키지는 운영 체제의 기본 구성 요소는 물론 공유 라이브러리, 응용 프로그램, 서비스 및 설명서를 제공합니다.

详解apt、yum、dnf 和 pkg

소개

소프트웨어 설치 외에도 패키지 관리 시스템은 설치된 패키지를 업데이트하는 도구도 제공합니다. 패키지 저장소는 시스템에 사용된 코드를 검토하고 설치된 소프트웨어 버전이 개발자 및 패키지 유지관리자에 의해 승인되었는지 확인하는 데 도움이 됩니다.

서버나 개발 환경을 구성할 때는 공식 저장소 외부에 어떤 패키지가 있는지 이해하는 것이 가장 좋습니다. 배포판의 안정 버전에 있는 패키지는 특히 새롭거나 빠르게 발전하는 소프트웨어의 경우 최신 버전이 아닐 수 있습니다. 그러나 패키지 관리는 시스템 관리자와 개발자 모두에게 필수적인 기술이며 패키지 소프트웨어는 주요 Linux 배포판에 큰 자산입니다.

이 가이드는 다양한 Linux 배포판에서 패키지를 찾고, 설치하고, 업그레이드하는 기본 사항을 빠르게 소개하고 여러 시스템에서 이러한 콘텐츠를 상호 참조하는 데 도움을 주기 위해 작성되었습니다.

패키지 관리 시스템: 간략한 개요

대부분의 패키지 시스템은 패키지 파일 모음을 중심으로 구축되었습니다. 패키지 파일은 일반적으로 소프트웨어용으로 컴파일된 바이너리와 기타 리소스는 물론 설치 스크립트가 포함된 아카이브 파일입니다. 패키지 파일에는 해당 종속성과 설치 및 실행에 필요한 기타 패키지 목록을 비롯한 귀중한 메타데이터도 포함되어 있습니다.

이러한 패키지 관리 시스템의 기능과 이점은 거의 동일하지만 패키징 형식과 도구는 플랫폼에 따라 다릅니다.

운영 체제 형식 도구
데비안 .deb apt, apt-cache, apt-get, dpkg
우분투 .deb apt, apt-cache, apt-get, dpkg
센트OS .rpm
페도라 .rpm dnf
FreeBSD 포트, .txz 메이크,패키지

Debian 및 Ubuntu, Linux Mint, Raspbian과 같은 파생 제품의 패키지 형식은 .deb입니다. APT 이 고급 패키지 관리 도구는 리포지토리 검색, 패키지 및 해당 종속성 설치, 업그레이드 관리 등 가장 일반적인 작업에 대한 명령을 제공합니다. 로컬 시스템에서는 dpkg 프로그램을 사용하여 단일 deb 파일을 설치할 수도 있습니다. APT 명령은 기본 dpkg의 프런트 엔드 역할을 하며 때로는 직접 호출되기도 합니다.

가장 최근에 출시된 데비안 파생물에는 apt-get 및 apt-cache 명령으로 일반적으로 처리되는 일반적인 작업에 대한 간결하고 통합된 인터페이스를 제공하는 apt 명령이 포함되어 있습니다. 이 명령은 선택 사항이지만 이를 사용하면 일부 작업을 단순화할 수 있습니다.

CentOS, Fedora 및 기타 Red Hat 제품군은 RPM 파일을 사용합니다. CentOS에서는 yum을 통해 개별 패키지 파일 및 리포지토리와 상호 작용합니다.

최근 Fedora 버전에서 yum은 yum의 인터페이스 대부분을 유지하는 현대적인 포크인 dnf로 대체되었습니다.

FreeBSD의 바이너리 패키징 시스템은 pkg 명령으로 관리됩니다. FreeBSD는 또한 사용자가 Makefile을 사용하여 소스 코드를 얻은 후 소스 코드에서 직접 패키지를 컴파일하고 설치할 수 있도록 하는 로컬 디렉토리 구조 및 도구인 Ports 컬렉션을 제공합니다.

업데이트된 패키지 목록

대부분의 시스템에는 원격 저장소에 해당하는 로컬 패키지 데이터베이스가 있습니다. 패키지를 설치하거나 업그레이드하기 전에 이 데이터베이스를 업데이트하는 것이 가장 좋습니다. 또한 yum 및 dnf는 일부 작업을 수행하기 전에 자동으로 업데이트를 확인합니다. 물론 언제든지 시스템을 업데이트할 수 있습니다.

시스템 명령
데비안/우분투 sudo apt-get 업데이트
sudo 적절한 업데이트
센트OS 냠 업데이트 확인
페도라 dnf 업데이트 확인
FreeBSD 패키지 sudo pkg 업데이트
FreeBSD 포트 sudo portsnap 가져오기 업데이트
설치된 패키지 업데이트

패키지 시스템이 없으면 컴퓨터에 설치된 모든 소프트웨어를 최신 상태로 유지하는 것은 어려운 작업입니다. 수백 가지의 다양한 패키지에 대한 업스트림 변경 사항과 보안 경고를 추적해야 합니다. 패키지 관리자가 소프트웨어를 업그레이드할 때 직면하는 모든 문제를 해결하지는 못하지만 일부 명령을 사용하여 대부분의 시스템 구성 요소를 유지 관리할 수 있습니다.

FreeBSD에서 설치된 포트를 업그레이드하면 주요 변경 사항이 발생할 수 있으며 일부 단계에서는 수동 구성이 필요하므로 portmaster를 통해 업데이트하기 전에 /usr/ports/UPDATING의 내용을 읽는 것이 가장 좋습니다.

없음
시스템 명령 지침
데비안/우분투 sudo apt-get 업그레이드 설치된 패키지만 업데이트
sudo apt-get dist-upgrade 새로운 종속성을 충족하기 위해 패키지를 추가하거나 제거할 수 있습니다
sudo apt 업그레이드 apt-get 업그레이드와 유사
sudo apt 전체 업그레이드 apt-get dist-upgrade와 유사
센트OS sudo yum 업데이트
페도라 sudo dnf 업그레이드
FreeBSD 패키지 sudo pkg 업그레이드
FreeBSD 포트 /usr/ports/UPDATINGless를 사용하여 포트의 업데이트 프롬프트를 확인하세요(스크롤하려면 위쪽 및 아래쪽 커서 키를 사용하고 종료하려면 q를 누르세요).
cd /usr/ports/ports-mgmt/portmaster && sudo make install && sudo portmaster -a portmaster를 설치하고 이를 사용하여 설치된 포트를 업데이트하세요
패키지 검색

대부분의 배포판은 패키지 컬렉션을 위한 그래픽 또는 메뉴 기반 도구를 제공하며, 이는 새로운 소프트웨어를 발견하는 좋은 방법이기도 합니다. 그러나 패키지를 찾는 가장 빠르고 효율적인 방법은 명령줄 도구를 사용하여 검색하는 것입니다.

만들기
시스템 명령 지침
데비안/우분투 apt-캐시 검색 search_string
apt 검색 search_string
센트OS 냠 검색 search_string
냠 모두 검색 search_string 설명을 포함한 모든 필드 검색
페도라 dnf 검색 search_string
dnf 검색 전체 search_string 설명을 포함한 모든 필드 검색
FreeBSD 패키지 pkg 검색 search_string 이름으로 검색
pkg 검색 -f 검색_문자열 이름으로 검색하고 전체 설명을 반환하세요
pkg 검색 -D 검색_문자열 검색 설명
FreeBSD 포트 cd /usr/ports && 검색 이름=패키지 만들기 이름으로 검색
cd /usr/ports && 검색 키=search_string리뷰, 설명, 종속성 검색
소프트웨어 패키지에 대한 정보 보기

소프트웨어 패키지를 설치하기 전에 패키지 설명을 주의 깊게 읽으면 많은 유용한 정보를 얻을 수 있습니다. 여기에는 사람이 읽을 수 있는 텍스트 외에도 일반적으로 버전 번호 및 패키지 종속성 목록과 같은 메타데이터가 포함됩니다.

시스템 명령 지침
데비안/우분투 apt-cache 쇼 패키지 패키지에 대한 로컬 캐시 정보 표시
적합 쇼 패키지
dpkg -s 패키지 현재 패키지 설치 상태를 표시합니다
센트OS 맛있는 정보 패키지
yum deplist 패키지 패키지 종속성 나열
페도라 dnf 정보 패키지
dnf repoquery --패키지 필요 패키지 종속성 나열
FreeBSD 패키지 pkg 정보 패키지 설치된 패키지에 대한 정보 표시
FreeBSD 포트 cd /usr/ports/category/port && cat pkg-descr
저장소에서 패키지 설치

패키지 이름을 알고 나면 일반적으로 하나의 명령으로 해당 패키지와 해당 종속 항목을 설치할 수 있습니다. 한 번에 여러 패키지를 설치할 수도 있으며, 모두 나열하면 됩니다.

시스템 명령 지침
데비안/우분투 sudo apt-get 설치 패키지
sudo apt-get install package1 package2 ... 나열된 모든 패키지 설치
sudo apt-get install -y 패키지 apt에서 계속할지 여부를 묻는 메시지가 표시되면 바로 기본값이 yes로 설정됩니다
sudo apt 설치 패키지 컬러 진행률 표시줄 표시
센트OS sudo yum 설치 패키지
sudo yum install package1 package2 ... 나열된 모든 패키지 설치
sudo yum install -y 패키지 yum에서 계속할지 묻는 메시지가 표시되면 바로 기본값이 yes로 설정됩니다
페도라 sudo dnf 설치 패키지
sudo dnf 설치 package1 package2 ... 나열된 모든 패키지 설치
sudo dnf install -y 패키지 dnf에서 계속할지 묻는 메시지가 표시되면 바로 기본값이 yes로 설정됩니다
FreeBSD 패키지 sudo pkg 설치 패키지
sudo pkg install package1 package2 ... 나열된 모든 패키지 설치
FreeBSD 포트 cd /usr/ports/category/port && sudo make install 소스에서 포트 빌드 및 설치
로컬 파일 시스템에서 패키지 설치

특정 운영 체제의 경우 일부 소프트웨어가 해당 패키지를 공식적으로 제공하지 않는 경우가 있으므로 개발자나 공급업체가 패키지 파일 다운로드를 제공해야 합니다. 일반적으로 웹 브라우저를 통해 이러한 패키지를 검색하거나 명령줄 컬을 통해 이 정보를 검색할 수 있습니다. 패키지를 대상 시스템에 다운로드한 후 일반적으로 단일 명령으로 설치할 수 있습니다.

Debian 파생 시스템에서 dpkg는 개별 패키지 파일을 처리하는 데 사용됩니다. 패키지에 충족되지 않은 종속성이 있는 경우 gdebi를 사용하여 공식 저장소에서 해당 종속성을 검색할 수 있습니다.

CentOS 및 Fedora 시스템에서는 yum 및 dnf를 사용하여 개별 파일을 설치하고 필요한 종속성을 처리합니다.

시스템 명령 지침
데비안/우분투 sudo dpkg -i package.deb
sudo apt-get install -y gdebi && sudo gdebi package.deb gdebi를 설치한 다음 gdebi를 사용하여 package.deb를 설치하고 누락된 종속성을 처리합니다
센트OS sudo yum 설치 package.rpm
페도라 sudo dnf 설치 package.rpm
FreeBSD 패키지 sudo pkg add package.txz
sudo pkg add -f package.txz 설치된 패키지도 다시 설치됩니다
하나 이상의 설치된 패키지 제거

패키지 관리자는 특정 패키지에서 어떤 파일이 제공되는지 알고 있기 때문에 소프트웨어가 더 이상 필요하지 않은 경우 시스템에서 해당 파일을 완전히 제거할 수 있는 경우가 많습니다.

시스템 명령 지침
데비안/우분투 sudo apt-get 패키지 제거
sudo apt 패키지 제거
sudo apt-get 자동 제거 불필요한 패키지 삭제
센트OS sudo yum 제거패키지
페도라 sudo dnf 지우기 패키지
FreeBSD 패키지 sudo pkg 패키지 삭제
sudo pkg 자동 제거 불필요한 패키지 삭제
FreeBSD 포트 sudo pkg 패키지 삭제
cd /usr/ports/path_to_port && make deinstall 포트 제거
apt 명령

Debian 제품군 배포판의 관리자는 일반적으로 apt-get 및 apt-cache에 익숙합니다. 덜 잘 알려진 것은 대화형 사용을 위해 설계된 단순화된 apt 인터페이스입니다.

전통적인 명령 동등한 apt 명령
apt-get 업데이트 적절한 업데이트
apt-get dist-upgrade 적절한 전체 업그레이드
apt-cache 검색 문자열 적절한 검색 문자열
apt-get 설치 패키지 적절한 설치 패키지
apt-get 제거 패키지 패키지 제거 적용
apt-get 퍼지 패키지 적절한 퍼지 패키지

apt는 일반적으로 특정 작업에 대한 단축키이지만 기존 도구를 완전히 대체할 수는 없으며 인터페이스는 사용성 향상을 위해 버전마다 변경될 수 있습니다. 스크립트나 셸 파이프라인에서 패키지 관리 명령을 사용하는 경우 apt-get 및 apt-cache를 사용하는 것이 가장 좋습니다.

도움받기

웹 기반 문서 외에도 Unix 매뉴얼 페이지(종종 매뉴얼 페이지라고 함)에서 대부분의 명령을 셸을 통해 얻을 수 있다는 점을 기억하세요. 예를 들어, 특정 페이지를 읽으려면 man을 사용할 수 있습니다:

남자에서는 화살표 키를 사용하여 탐색할 수 있습니다. /를 눌러 페이지 내의 텍스트를 검색하고 q를 사용하여 종료하세요.

시스템 명령 지침
데비안/우분투 man apt-get 로컬 패키지 데이터베이스 업데이트 및 패키지 작업
man apt-cache 로컬 패키지 데이터베이스에서 검색
man dpkg 개별 패키지 파일 작업 및 설치된 패키지 쿼리
맨 아파트 더 간단하고 사용자 친화적인 인터페이스를 통해 가장 기본적인 작업을 수행하세요
센트OS 만냠냠
페도라 남자 dnf
FreeBSD 패키지 남자 패키지 사전 컴파일된 바이너리 패키지와 함께 작동
FreeBSD 포트 맨 포트 포트 컬렉션 작업

위 내용은 apt, yum, dnf, pkg의 기능과 특성을 분석합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:linuxprobe.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿