Saat ini ketika salah satu dari dua UPS mati, peristiwa doshutdown dipicu, dan mengeksekusi skrip default melalui apccontrol . The doshutdown Script mengabaikan UPS kedua, karena mereka tidak event-terhubung, dan lanjutkan normal dengan shutdown.
Untuk membuat acara doshutdown agak terkoneksi, kedua instance dari apcupsd memerlukan file konfigurasi khusus yang disesuaikan. Perbedaannya akan berada di direktori tempat skrip acara harus dieksekusi.
Properti utama dari orang pertama, di /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
Dan untuk ups1, in /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
Setiap skrip harus mendapatkan salinan skrip default.
Kami ingin menyesuaikan skrip doshutdown , yang tidak akan mematikan mesin secara langsung, tetapi harus memeriksa apakah UPS lain masih menyala, atau dalam mode mati.
Di bagian atas skrip doshutdown , kita dapat menambahkan sesuatu seperti
untuk ups0
if [ ! -f /tmp/ups1.is.down ]
then
touch /tmp/ups0.is.down
exit 99
fi
untuk ups1
if [ ! -f /tmp/ups0.is.down ]
then
touch /tmp/ups1.is.down
exit 99
fi
status 99 memiliki makna khusus, yang memberitahu apccontrol untuk menghentikan tindakan yang sedang berlangsung. Lima baris memeriksa apakah file UPS-down lainnya telah dibuat; jika tidak , file down dibuat untuk up yang turun, dan keluar. Jika ya , artinya UPS yang lain mati, yang ini juga turun, jadi skrip harus melanjutkan dan mematikan mesin.
File-file tersebut /tmp/usp[01].is.down
mengindikasikan jika kenaikan [01] saat ini turun.
Penting: skrip init.d start dari apcupsd harus menghapus file-file ini, jika sudah dibuat di sesi sebelumnya:
rm -f /tmp/usp[01].is.down
Akhirnya, direktori yang dibuat di atas, / etc / apcupsd / ups [01] harus diberikan akses ke pengguna apcupsd (atau kepada pengguna yang relevan yang menjalankan instance).
chown -R apcupsd /etc/apcupsd/ups[01]
Silakan lihat dokumentasi terperinci .
sunting memperbaiki /tmp/ups[01].is.down
nama, yang .is
hilang.