yum, apt-get, rpm, ./configure && make install의 차이점은 무엇입니까?


126

저는 Linux를 처음 사용하고 CentOS를 실행하고 있습니다. 소프트웨어를 업데이트하거나 설치하는 네 가지 방법이 있습니다.

지금까지 본 적이 있습니다.

  • yum install [program]
  • apt-get install [program]
  • rpm -i [program].rpm
  • wget [program].tar.gz-> unpack-> ./configure-> make->make install

마지막은 특히 Windows에서 발생하는 문제입니다. 프로그램 설치는 일반적으로 한 번의 클릭으로 설치 마법사가 좋습니다.

그래서 내 질문은 :

  • Linux에서 왜 이렇게 많은 다른 방법이 있습니까?
  • 어느 것을 사용하는 것이 좋으며 왜 그럴까요?
  • Linux에서 프로그램을 설치하는 다른 방법이 있습니까?

또한 yumvs는 어떻 습니까 up2date? 나는 그 차이에 대해 분명하지 않았다.
— Josh

apt-get데비안을위한 것이며 CentOS에 실제로 나타나지 않아야합니다 ....
— Kyle Strand

답변:


114

이러한 도구는 모두 소프트웨어를 시스템에 설치하지만 다른 수준에서 작동합니다.

  • ./configure && make 설치

    실행 ./configure && make install하면 소스 코드에서 직접 라이브러리 또는 실행 파일을 빌드하고 설치합니다.

    이 make install단계는 기본적으로 최종 파일을 시스템에 복사합니다. 많은 소스에는 make uninstall다시 제거하기 위한 특수 규칙이 제공되지만 이것이 보장되지는 않으며 구성된 소스가있는 한 작동합니다. 또한 필요한 종속성을 처리하지 않습니다.

    특정 패키지에 사용할 수있는 소스 코드 만있는 경우가 많으므로 이것이 유일한 방법입니다. 또한 ./configure일반적으로 패키지를 조정할 수있는 옵션이 많이 있습니다.

    어떤 소프트웨어가 어떤 파일을 설치했는지 알 수없고 시스템에서 파일을 제거 할 수있는 신뢰할 수있는 방법이 부족하다는 것이이 접근 방식의 주요 단점입니다.

  • RPM (Redhat 패키지 관리자)

    rpm시스템에 이미 구성 및 컴파일 된 소프트웨어를 설치하고 다시 제거하기 위해 제거와 함께 제공됩니다. 패키지는 누군가가 만들어야합니다. 이 담당자는 이미 포함 할 기능과 패키지를 시스템 레이아웃에 가장 잘 통합하는 방법을 결정했습니다. 또한 종속성 목록이 제공됩니다.

    rpm은 많은 배포에 사용되기 때문에 설치 경로, 종속성 및 기타 정리 작업이 잘 통합되도록 배포 용으로이 rpm을 작성해야하는 경우가 종종 있습니다.

    데비안 시스템에서 동등한 패키지 형식이며 .deb설치 및 데이터베이스가 dpkg도구에 의해 처리됩니다 .

  • m

    yum주위에 추가 래퍼 rpm입니다. 일반적으로 온라인 리포지토리에서 배포 할 수있는 고유 한 rpm 파일 데이터베이스를 유지합니다. 대부분의 배포판의 안정적인 버전에서는 해당 데이터베이스 내의 모든 패키지가 서로 잘 작동합니다. 이 데이터베이스를 검색 할 수 있습니다 (예 :) yum search some_name.

    또한 종속성을 자동으로 해결합니다. 패키지 (및 종속성에 대한 추가 도움이있는 경우)도 쉽게 제거 할 수 있습니다.

    데비안 시스템에서 동등한 저장소 및 의존성 해결 도구는 Apt ( apt-get및 aptitude)에서 제공합니다.

요약하자면 일부 소프트웨어를 yum먼저 사용 하려는 경우 . 해당 rpm패키지 가없는 경우 기존 패키지 를 찾을 수 있습니다 . 특별한 요구 사항이 없거나 소스가없는 경우 소스에서 빌드하십시오.


내가 할 말은 거의. 데비안에서 언급 한 내용을 추가하고 형식을 수정했습니다.
— quick quixote

2
@quack : 감사합니다. 그러나 우리 모두가 그냥 쉬지 못 apt-get하거나 여전히 아무것도 추천 할 수는 없습니까?
— Benjamin Bannier

2
당신이 옳습니다. 적성 을 추천하는 것이 좋습니다. apt-get 은 널리 언급 되었기 때문에 apt-get을 포함 했으며 적성 에 대해 모르는 독자 는 apt-get에 대해 들었습니다 .
— quick quixote

4
apt-get의 문제점은 무엇입니까?
— 재귀

5
@recursive : 언젠가 apt-get는 자동 종속성을 기록하지 않고 제거 후 남은 상태로 두었고 aptitude적절한 종속성 추적을 도입했습니다. 또한에서 사용할 수없는 몇 가지 추가 기능도 제공했습니다 apt-get. 확실하지는 않지만 어느 시점 apt-get에서 aptitude어디에서 업데이트되어 동일한 기능을 제공하는 동일한 고급 백엔드를 사용 한다고 생각 합니다.
— Benjamin Bannier

5

Yum은 RPM이 똑같습니다. yum은 네트에서 패키지를 자동으로 가져 와서 한 번에 패키지를 사용하여 설치합니다 rpm -i. 업데이트를 쉽게하기 위해 가능할 때마다 사용해야합니다. 사용 rpm하여 찾을 수 할 패키지가 없을 때에 만 yum, 그리고 사용 make이 가능한 .rpm 패키지가 없거나 일부 컴파일시 옵션을 변경해야 할 경우에만 방법.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.