참고: 제가 여기서 무엇을 하고 있는지 거의 모르기 때문에 매우 당연한 내용일 수도 있지만 Google에서 제가 찾고 있는 것을 찾을 수 없습니다.
CentOS 6.7 실행
어제 내가 주목한 것은opendkim 설정 가이드내 서버에서는 내가 알 수 있는 한 작동하고 있습니다.
이 가이드에서는 다음을 통해 opendkim 패키지를 얻으라고 말했습니다.
wget http://sourceforge.net/projects/opendkim/files/opendkim-2.4.2.tar.gz
와 함께
tar zxvf opendkim-2.4.2.tar.gz
cd opendkim-2.4.2
./configure --sysconfdir=/etc --prefix=/usr/local --localstatedir=/var
make
make install
나는 이것이 최신 버전이 아니라는 것을 알았습니다(먼저 확인했어야 했다는 것을 알았습니다 -__-). 이제 를 통해 설치할 수 있음을 보여주는 업데이트된 버전의 가이드를 찾았습니다 yum install opendkim
.
나는 그 방법을 사용하고 싶지만 이것이 모든 것을 깨끗하게 다룰 것인지, 아니면 전혀 다룰 것인지 알 만큼 이 내용에 대해 충분히 알지 못합니다.
수동 설치를 제거/덮어쓰는 동안 yum을 사용하여 opendkim을 설치하는 가장 안전하고 최선의 방법은 무엇입니까(내 구성을 이상적으로 유지하면서 - 필요한 경우 다시 실행할 수 있음)
답변1
가장 좋은 방법은 컴파일한 프로그램에 제거 대상이 있는지 확인하는 것입니다. 따라서 새로운 환경에서 시작할 수 있습니다.
yum으로 파일을 덮어쓰려면 yum의 작동 방식을 알아야 합니다.
nginx 패키지를 예로 들어보겠습니다. %file
패키지가 설치할 모든 파일을 선택적으로 설명 할 수 있습니다 .
이 섹션의 일부는 다음과 같습니다.
%files
%license LICENSE
%doc CHANGES README
%{nginx_datadir}/html/*
%{_sbindir}/nginx
%{_datadir}/vim/vimfiles/ftdetect/nginx.vim
%{_mandir}/man8/nginx-upgrade.8*
%{_unitdir}/nginx.service
%config(noreplace) %{nginx_confdir}/fastcgi.conf
%config(noreplace) %{nginx_confdir}/fastcgi.conf.default
여기서는 두 종류의 파일이 있음을 확인할 수 있습니다. 하나는 접두사가 있는 파일 %config
이고 다른 하나는 접두사가 없는 파일입니다.
두 파일의 특성이 다릅니다. 기본 파일은 자동으로 무시되고 rpm 버전으로 대체됩니다.
구성 파일은 biavior에 따라 다릅니다 noreplace
. 해당 플래그가 설정되어 있으면 구성 파일을 덮어쓰지 않고 rpm 버전이 확장명을 사용하여 noreplace
동일한 디렉터리 에 추가됩니다..rpmnew
이 플래그가 없으면 현재 파일이 .rpmsave
확장명과 함께 동일한 디렉터리에 저장되고 패키지 구성이 배포됩니다.
rpm 버전으로 돌아가려면 패키지가 /etc에 삽입한 파일을 삭제하거나 rpm 알림을 사용하여 올바른 파일을 삭제하고 이동하면 됩니다.
답변2
덜 예시적인 접근 방식은 정확히 어떤 파일이 복사되었는지 확인 make
하고 삭제/저장한 다음 설치 yum
하고 변경하는 것입니다(이전 설치가 이미 구성된 경우).
명령은
make -n install
이렇게 하면 설치가 수행되지 않고 make install
실행 가능한 명령만 표시됩니다. 따라서 출력을 가져와서 편집하고 복사 명령을 삭제로 바꿀 수 있습니다. 이를 실행하여 소스에서 설치를 제거합니다.
그런 다음 설치yum