一直用apcupsd管理ups, 因为本来就要使用nginx, 所以想把默认用的apache换成nginx.
查了下, 用fcgiwrap 就行了, 记录下修改过程.

  • 安装软件包

    apt install -y apcupsd apcupsd-cgi fcgiwrap nginx
    
  • 修改配置文件 修改/etc/apcupsd/apccontrol 使用自定义关机脚本

    SHUTDOWN=/root/bin/poweroff
    

    修改/etc/apcupsd/apccontrol 使用USB连接, 设定SHUTDOWN时间

    UPSTYPE usb
    DEVICE
    MINUTES 5
    

    修改/etc/nginx/sites-enabled/default 加入apcupsd相关配置.

    location ~ cgi-bin/apcupsd/.*\.cgi$ {
        fastcgi_param       SCRIPT_FILENAME     /usr/lib$fastcgi_script_name;
        fastcgi_pass        unix:/var/run/fcgiwrap.socket;
        include             fastcgi_params;
    }
    
  • 重启服务

    service apcupsd restart
    service fcgiwrap restart
    service nginx restart
    
  • 现在可以通过127.0.0.1/cgi-bin/apcupsd/multimon.cgi 查看ups 状态了.