그래요아니요유닉스/리눅스 관리자.
우리 서버에 git을 설치하려고 하는데, 많은 인터넷 검색과 시행착오 끝에 perl*이 yum.conf 파일에서 제외되어 git에 종속된 perl-Git의 설치를 방해한다는 사실을 발견했습니다. 핵심. 이것이 무엇을 하는지는 이해하지만 잘 모르겠습니다.왜끝났다. 그 파일에는 제외된 항목이 많이 있는데, 보안 문제든 다른 것이든 사람들이 어떤 항목을 제외하고 싶어하는 이유를 이해하려고 노력하고 있습니다.
원래 서버 관리자가 보트 사고로 사망했습니다. 우리는 CentOS 5.4를 사용하고 있으며 yum을 사용하여 git을 설치하려고 했습니다.
답변1
사용 가능한 버전에 버그가 있는 것으로 알려진 경우 해당 패키지를 설치에서 일시적으로 제외하는 것이 합리적일 수 있습니다. 하지만 일반적으로 버그 수정을 제외하고 자주 업데이트되지 않는 배포판을 설치하는 서버에서는 이러한 일이 거의 발생하지 않습니다.
Perl을 특별히 제외하는 한 가지 이유는 CPAN에서 직접 별도의 Perl 설치가 있고 설치된 라이브러리 및 버전의 일관된 세트를 보장하기 위해 네트워크의 다른 시스템과 공유되거나 동기화되는 경우입니다. Perl 설치를 찾 /usr/local
거나 바꾸려면 에서 설정을 확인하세요 . 나는 이것을 하지 않을 것입니다. 왜냐하면 당신이 언급했듯이 의존성이 깨지기 때문입니다. 그러나 누군가가 유혹을 받는 이유를 이해할 수 있습니다.opt
PERL5LIB
/etc/profile
전체 제외 항목을 게시하면 누군가 패턴을 발견할 수도 있습니다. 파일에 힌트를 줄 수 있는 설명이 있나요?
앞으로 이러한 문제를 방지하려면 모든 구성을 버전 제어에 두어야 합니다. 그러면 변경 로그에 놀라운 구성이 설정된 시기와 이유가 표시됩니다.
데비안/우분투에서 나는 사용합니다관리자를 기다려주세요, CentOS용으로도 패키지된 것 같아요. 다중 관리자 시스템에서는 변경 사항을 자동으로 커밋하지 않도록 설정해야 하며 관리자는 yum install
또는 를 실행하기 전에 명시적으로 커밋해야 합니다 yum update
.
답변2
cPanel은 자체 Perl 사본을 추적합니다. 기본 설치에는 제외 규칙이 추가됩니다. 많은 사람들이 작업과 모든 서버 작업을 수행하기 위해 cPanel에 크게 의존하고 과거에는 패키지와 Perl에 문제가 있었을 수 있기 때문에 이렇게 하는 것 같습니다.
--disableexcludes
저장소에서 제외를 비활성화하는 옵션을 사용하여 git을 설치할 수 있습니다 .
yum --disableexcludes=epel install git
답변3
Perl을 일반 루트 디렉토리에 설치하면 구성에 따라 cPanel을 방해할 가능성이 줄어듭니다. 무엇이 반환되나요 which perl
?
기술적으로 Perl을 설치하지 않고도 Git은 물론 Git 및 해당 종속 항목도 설치할 수 있습니다. 그렇게 하면 Git의 일부 기능에 영향을 미칠 수 있습니다.
yum -y install yum-downloadonly && yum install --downloadonly --downloaddir=/foo/bar/ git
그러면 Git의 현재 rpm과 해당 종속성(perl-Error 및 perl-Git)이 /foo/bar/에 다운로드됩니다. 이제 할 수 있다rpm -ivh --nodeps /foo/bar/{git,perl-{Error,Git}}*.rpm