현재 두 UPS 중 하나가 죽으면 doshutdown 이벤트가 트리거되고 apccontrol을 통해 기본 스크립트를 실행합니다 . doshutdown의 가 이벤트에 연결하지 않고, 종료와 함께 정상적으로 진행으로 스크립트는 두 번째 UPS를 무시합니다.
doshutdown 이벤트를 어느 정도 연결 하려면 apcupsd 의 두 인스턴스에 특별히 사용자 정의 된 구성 파일이 필요합니다. 차이점은 이벤트 스크립트를 실행해야하는 디렉토리에 있습니다.
첫 업의 주요 속성 /etc/apcupsd/apcupsd.ups0.conf
SCRIPTDIR /etc/apcupsd/ups0
UPSNAME ups0
DEVICE /dev/ups0
PWRFAILDIR /etc/apcupsd/ups0
NOLOGINDIR /etc/apcupsd/ups0
NISPORT 3551
EVENTSFILE /var/log/apcupsd.0.events
그리고 ups1의 경우 /etc/apcupsd/apcupsd.ups1.conf
SCRIPTDIR /etc/apcupsd/ups1
UPSNAME ups1
DEVICE /dev/ups1
PWRFAILDIR /etc/apcupsd/ups1
NOLOGINDIR /etc/apcupsd/ups1
NISPORT 3552
EVENTSFILE /var/log/apcupsd.1.events
각 scriptdir 은 기본 스크립트의 사본을 가져와야 합니다. 기계를 직접 종료하지는 않지만 다른 UPS가 여전히 켜져 있는지 또는 종료 모드인지 확인 해야하는 doshutdown 스크립트
를 사용자 정의하려고 합니다.
doshutdown 스크립트 상단에 다음과 같은 내용을 추가 할 수 있습니다.
업 0
if [ ! -f /tmp/ups1.is.down ]
then
touch /tmp/ups0.is.down
exit 99
fi
업 1
if [ ! -f /tmp/ups0.is.down ]
then
touch /tmp/ups1.is.down
exit 99
fi
상태 99는 특별한 의미를 가지며, 이는 apccontrol 에게 진행중인 작업을 중지하도록 지시 합니다. 다섯 줄은 다른 UPS 다운 파일이 작성되었는지 확인합니다. 아니오 인 경우 , 다운 파일은 다운 된 파일에 대해 작성되고 종료됩니다. 예인 경우 다른 UPS가 다운되었다는 의미입니다.이 UPS도 다운되므로 스크립트가 계속 진행되고 머신이 종료됩니다.
파일 /tmp/usp[01].is.down
은 ups [01]이 현재 작동 중지되었는지 표시합니다.
중요 : apcupsd의 init.d 시작 스크립트가 이전 세션에서 작성된 파일을 제거해야합니다.
rm -f /tmp/usp[01].is.down
마지막으로 위에서 생성 한 / etc / apcupsd / ups [01] 디렉토리는 apcupsd 사용자 (또는 인스턴스를 실행하는 관련 사용자) 에게 액세스 권한을 부여해야합니다 .
chown -R apcupsd /etc/apcupsd/ups[01]
상기 봐 제발 자세한 설명서를 .
/tmp/ups[01].is.down
이름을 수정하여 수정.is
되었습니다.