2012-10-31 4 views
1

라이브 웹 사이트에서 nginx를 실행 중이지만 몇 가지 추가 기능을 추가하려면이 파일을 다시 컴파일해야합니다. 내가 사용하는 명령이 있습니다. 내가 바로 'make install'를 실행할 때까지Nginx 다시 컴파일

make clean 
./configure -- BLA BLA BLA 
make 
make install 

그냥 확인을 위해, 나는, nginx를 중지 할 필요가 없습니다? 'make'명령은 가장 오래 걸립니다. 100 % 확신하고 싶습니다. Nginx를 더 빨리 중지시킬 필요가 없습니다.

이렇게 확인하면 실제로는 두 번째 또는 두 번째 작동 중지 시간을 의미합니다.

make clean 
./configure -- BLA BLA BLA 
make 
/etc/init.d/nginx stop 
make install 
/etc/init.d/nginx start 

답변

2

당신은, 바로되어 있는지 확인 시스템 당신은 다운 타임을 가질 필요가 없습니다

0

에 설치됩니다 설치하는 동안 연결 및 컴파일을 바로 확인합니다. 실행 파일을 컴파일하고 바꿉니다. 그런 다음 nginx를 트리거하여 새 마스터를 생성합니다. 과정은 여기에 설명 : http://nginx.org/en/docs/control.html#upgrade

New Version - Master - start: 
kill -s USR2 `cat /var/run/nginx.pid` 

Old Version - Worker - stop: 
kill -s WINCH `cat /var/run/nginx.pid.oldbin` 
Old Version - Master - stop: 
kill -s QUIT `cat /var/run/nginx.pid.oldbin` 

당신이 이전 버전으로 되돌아 가고 싶은 경우 오류가 발생하면 파일이 컴파일 옵션이 잘못 교체 할 수없는

Old Version - Worker - start: 
kill -s HUP `cat /var/run/nginx.pid.oldbin` 
New Version - Master - stop: 
kill -s QUIT `cat /var/run/nginx.pid` 

.

--sbin-path=/usr/sbin/nginx 
+0

이 작업은 언제'make clean','./configure','make' 라이프 사이클에서 수행됩니까? –

+0

@MajorProductionsLLC'make install '후에. 이전 마스터 프로세스는 새로운 마스터 프로세스를 생성하기 전에 실행 파일이 대체되기 때문에 이해할 수있는 한 RAM에 만 존재합니다. "이전 버전 마스터"가 중지되면 바꾸기 프로세스가 완료되고 다시 컴파일 할 때까지 실행 취소 할 수 없습니다. – unNamed