배터리가 부족할 때 데비안 서버와 UPS의 전원을 끄는 방법은 무엇입니까?

배터리가 부족할 때 데비안 서버와 UPS의 전원을 끄는 방법은 무엇입니까?

하나의 독립형 USB UPS가 있는 Debian 서버를 구성하는 방법:

  1. 배터리가 부족하면 1분 후에 UPS 전원 끄기를 시작합니다.
  2. 자체를 종료합니다.
  3. 그리고 주 전원이 복원되면 (UPS가 다 떨어지기 전에도) 데비안 서버가 시작됩니다.

이러한 단계는 다음에 설명되어 있습니다.이 질문그러나 그것을 달성하는 방법에 대한 설명은 없습니다.

나는 가지고있다:

  • 전원이 복구되면 항상 시작되도록 서버가 구성되었습니다.
  • 설치 nut하고 실행하면 upsc myups배터리 수준을 포함하여 UPS의 정보가 표시됩니다. 따라서 배터리를 모니터링하고 서버를 종료하는 스크립트를 쉽게 작성할 수 있습니다.

내 질문은 다음과 같습니다

UPS에 전원 끄기 명령을 보내는 방법은 무엇입니까?

UPS는 다음과 같습니다.이튼 5E 650i

나는 /etc/nut/nut.conf다음을 가지고 있습니다 :

MODE=standalone

나는 /etc/nut/ups.conf다음을 가지고 있습니다 :

[myups]
    driver = usbhid-ups
    port = auto
    vendorid = 0463
    pollfreq = 30

upsc myups인쇄물:

Init SSL without certificate database
battery.charge: 100
battery.runtime: 1825
battery.type: PbAc
device.mfr: EATON
device.model: 5E 650i
device.type: ups
driver.name: usbhid-ups
driver.parameter.pollfreq: 30
driver.parameter.pollinterval: 2
driver.parameter.port: auto
driver.parameter.synchronous: no
driver.parameter.vendorid: 0463
driver.version: 2.7.4
driver.version.data: MGE HID 1.39
driver.version.internal: 0.41
input.voltage: 230.0
outlet.1.status: on
outlet.desc: Main Outlet
outlet.id: 1
outlet.switchable: no
output.frequency: 49.9
output.frequency.nominal: 50
output.voltage: 230.0
output.voltage.nominal: 230
ups.beeper.status: enabled
ups.delay.shutdown: 20
ups.firmware: 03.08.0018
ups.load: 19
ups.mfr: EATON
ups.model: 5E 650i
ups.power.nominal: 650
ups.productid: ffff
ups.start.battery: yes
ups.status: OL
ups.timer.shutdown: -1
ups.vendorid: 0463

답변1

좋아요, 이제 효과가 있는 것 같아요. 내가 한 일은 다음과 같습니다.

apt-get install nut-server

apt-get install nut-client

nano /etc/nut/nut.conf

MODE=standalone

nano /etc/nut/ups.conf

[myups]
    driver = usbhid-ups
    port = auto
    vendorid = 0463
    pollfreq = 30

/sbin/upsdrvctl start

upsc myups 몇 가지 문제를 인쇄합니다.

재부팅 /usr/sbin/shutdown -r now

이제 실행하면 upsc myupsUPS 정보가 표시됩니다.

Init SSL without certificate database
battery.charge: 86
battery.runtime: 956
battery.type: PbAc
device.mfr: EATON
device.model: 5E 650i
device.type: ups
driver.name: usbhid-ups
driver.parameter.pollfreq: 30
driver.parameter.pollinterval: 2
driver.parameter.port: auto
driver.parameter.synchronous: no
driver.parameter.vendorid: 0463
driver.version: 2.7.4
driver.version.data: MGE HID 1.39
driver.version.internal: 0.41
input.voltage: 226.0
outlet.1.status: on
outlet.desc: Main Outlet
outlet.id: 1
outlet.switchable: no
output.frequency: 49.9
output.frequency.nominal: 50
output.voltage: 225.0
output.voltage.nominal: 230
ups.beeper.status: enabled
ups.delay.shutdown: 20
ups.firmware: 03.08.0018
ups.load: 27
ups.mfr: EATON
ups.model: 5E 650i
ups.power.nominal: 650
ups.productid: ffff
ups.start.battery: yes
ups.status: OL
ups.timer.shutdown: -1
ups.vendorid: 0463

다음과 같이 인쇄 하면 /sbin/upsmon:

Network UPS Tools upsmon 2.7.4
fopen /var/run/nut/upsmon.pid: No such file or directory
Using power down flag file /etc/killpower

Fatal error: insufficient power configured!

Sum of power values........: 0
Minimum value (MINSUPPLIES): 1

Edit your upsmon.conf and change the values.
    

노력하다:nano /etc/nut/upsd.users

[upsmon]
    password  = mypassword
    upsmon master

chmod 640 /etc/nut/upsd.users

ls -lahrt /etc/nut/upsd.users

-rw-r----- 1 root nut 2,2K Dec 13 13:15 /etc/nut/upsd.users

nano /etc/nut/upsmon.conf

MONITOR myups@localhost 1 upsmon mypassword master

systemctl enable nut-monitor

/sbin/upsmon

Network UPS Tools upsmon 2.7.4
fopen /var/run/nut/upsmon.pid: No such file or directory
UPS: myups@localhost (master) (power value 1)
Using power down flag file /etc/killpower

전기를 차단하여 테스트했을 때 syslog에서 볼 수 있는 내용은 다음과 같습니다.

Dec 13 15:47:01 pc upsmon[604]: UPS myups@localhost on battery
... 12 minutes later
Dec 13 15:59:32 pc upsmon[604]: UPS myups@localhost battery is low
Dec 13 15:59:32 pc upsd[601]: Client upsmon@::1 set FSD on UPS [myups]
Dec 13 15:59:32 pc upsmon[604]: Executing automatic power-fail shutdown
Dec 13 15:59:32 pc upsmon[604]: Auto logout and shutdown proceeding
Dec 13 15:59:37 pc systemd[1]: nut-monitor.service: Succeeded.
Dec 13 15:59:37 pc systemd[1]: unattended-upgrades.service: Succeeded.
Dec 13 15:59:37 pc systemd[1]: Stopping Session 39 of user a.
Dec 13 15:59:37 pc systemd[1]: Stopped target Graphical Interface.
Dec 13 15:59:37 pc upsd[601]: mainloop: Interrupted system call
Dec 13 15:59:37 pc systemd[1]: Stopped target Multi-User System.
Dec 13 15:59:37 pc upsd[601]: Signal 15: exiting
Dec 13 15:59:37 pc systemd[1]: Stopping Network UPS Tools - power devices information server...
Dec 13 15:59:37 pc systemd[1]: postgresql.service: Succeeded.
Dec 13 15:59:37 pc systemd[1]: Stopped PostgreSQL RDBMS.
Dec 13 15:59:37 pc systemd[1]: Stopping PostgreSQL Cluster...
Dec 13 15:59:37 pc systemd[1]: Stopping The Apache HTTP Server...
Dec 13 15:59:37 pc systemd[1]: Stopping LSB: disk temperature monitoring daemon...
Dec 13 15:59:37 pc systemd[1]: sysstat.service: Succeeded.
Dec 13 15:59:37 pc systemd[1]: Stopped Resets System Activity Data Collector.
Dec 13 15:59:37 pc smartd[392]: smartd received signal 15: Terminated
Dec 13 15:59:37 pc smartd[392]: Device: /dev/sda [SAT], state written to /var/lib/smartmontools/smartd.xxx.ata.state
Dec 13 15:59:37 pc smartd[392]: Device: /dev/sdb [SAT], state written to /var/lib/smartmontools/smartd.yyy.ata.state
Dec 13 15:59:37 pc smartd[392]: smartd is exiting (exit status 0)
Dec 13 15:59:37 pc systemd[1]: Stopping Self Monitoring and Reporting Technology (SMART) Daemon...
Dec 13 15:59:37 pc systemd[1]: Stopping Regular background program processing daemon...
Dec 13 15:59:37 pc systemd[1]: Stopped target Login Prompts.
Dec 13 15:59:37 pc systemd[1]: Stopping OpenBSD Secure Shell server...
... when power is on again
Dec 13 16:01:28 pc kernel: [    0.000000] Linux version 4.19.0-9-amd64 ([email protected]) (gcc version 8.3.0 (Debian 8.3.0-6)) #1 SMP Debian 4.19.1$

부팅 후 실행하면 upsmon다음이 표시됩니다.

/sbin/upsmon

Network UPS Tools upsmon 2.7.4
Fatal error: A previous upsmon instance is already running!
Either stop the previous instance first, or use the 'reload' command.

이는 실행 중이고 모든 것이 괜찮다는 것을 의미합니다. :)

여기에서 , , 와 upsc같이 로 인쇄된 변수의 의미를 볼 수 있습니다 .ups.statusups.timer.shutdownbattery.chargehttps://networkupstools.org/docs/user-manual.pdf

또 다른 유용한 URL은 다음과 같습니다.https://risc-a-day.blogspot.com/2014/09/getting-my-ups-to-work-with-linux.html

관련 정보