저는 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에서 프로그램을 설치하는 다른 방법이 있습니까?
답변
이러한 도구는 모두 소프트웨어를 시스템에 설치하지만 다른 수준에서 작동합니다.
-
./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
패키지 가없는 경우 기존 패키지 를 찾을 수 있습니다 . 특별한 요구 사항이 없거나 소스가없는 경우 소스에서 빌드하십시오.
답변
Yum은 RPM이 똑같습니다. yum은 네트에서 패키지를 자동으로 가져 와서 한 번에 패키지를 사용하여 설치합니다 rpm -i
. 업데이트를 쉽게하기 위해 가능할 때마다 사용해야합니다. 사용 rpm
하여 찾을 수 할 패키지가 없을 때에 만 yum
, 그리고 사용 make
이 가능한 .rpm 패키지가 없거나 일부 컴파일시 옵션을 변경해야 할 경우에만 방법.