Apcupsd

From CBLFS
Revision as of 12:00, 25 March 2009 by Cosmo (talk | contribs) (Added homepage)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigationJump to search
Download Source: http://downloads.sourceforge.net/apcupsd/apcupsd-3.14.5.tar.gz

Introduction to Apcupsd

Apcupsd is a deamon that talks with APC ups and monitors it's status. There are alot of devices that it will work with one should read up on it.

Project Homepage: http://www.apcupsd.org/

Dependencies

Optional

Configuration Information

MANUAL: http://www.apcupsd.org/manual/index.html

--enable-usb: Turns on generation of the USB driver code.

--with-upstype=<YOUR_UPS>: This option allows you to specify the type of UPS that will be connected to your computer

--with-upscable=<YOUR_CABLE>: This option allows you to specify what cable you are using to connect to the UPS

--enable-cgi: Enables the building of the CGI programs that permit Web browser access to apcupsd data

--with-cgi-bin=<CGI_DIR>: Points to your CGI dir

--enable-gapcmon: A Gtk2/GLib2 GUI application used to monitor UPS devices controlled by the APCUPSD package.

--enable-powerflute: Is a ncurses based program to monitor the UPS.

Non-Multilib

Compile the package:

./configure --prefix=/usr --with-log-dir=/var/log \
    --enable-usb --with-upstype=usb --with-upscable=usb \
    --enable-cgi --with-cgi-bin=/srv/www/cgi-bin \
    --enable-gapcmon --enable-powerflute &&
make

Install the package:

make install

Multilib

This package does not provide any libraries so only one installation is needed.

32Bit

Compile the package:

CC="gcc ${BUILD32}" CXX="g++ ${BUILD32}" \
PKG_CONFIG_PATH="$PKG_CONFIG_PATH32" USE_ARCH=32 \
./configure --prefix=/usr --with-log-dir=/var/log \
    --enable-usb --with-upstype=usb --with-upscable=usb \
    --enable-cgi --with-cgi-bin=/srv/www/cgi-bin \
    --enable-gapcmon --enable-powerflute &&
make

Install the package:

make install

N32

CC="gcc ${BUILDN32}" CXX="g++ ${BUILDN32}" \
PKG_CONFIG_PATH="$PKG_CONFIG_PATHN32" USE_ARCH=n32 \
./configure --prefix=/usr --with-log-dir=/var/log \
    --enable-usb --with-upstype=usb --with-upscable=usb \
    --enable-cgi --with-cgi-bin=/srv/www/cgi-bin \
    --enable-gapcmon --enable-powerflute &&
make

Install the package:

make install

64Bit

Compile the package:

CC="gcc ${BUILD64}" CXX="g++ ${BUILD64}" \
PKG_CONFIG_PATH="$PKG_CONFIG_PATH64" USE_ARCH=64 \
./configure --prefix=/usr --with-log-dir=/var/log \
    --enable-usb --with-upstype=usb --with-upscable=usb \
    --enable-cgi --with-cgi-bin=/srv/www/cgi-bin \
    --enable-gapcmon --enable-powerflute &&
make

Install the package:

make install

Configuring

BootScript

Create the bootscript:

cat > /etc/rc.d/init.d/apcupsd << "EOF"
#!/bin/sh
# Begin $rc_base/init.d/apcupsd

# Based on sysklogd script from LFS-3.1 and earlier.
# Rewritten by zippo zippo@oppiz.net

#$LastChangedBy: oppiz 
#$Date: 2007-02-15 00:13:00Hrs

. /etc/sysconfig/rc
. $rc_functions

case "$1" in
    start)
       boot_mesg "Starting Apcupsd Server..."
       loadproc /sbin/apcupsd
       sleep 1
       ;;

   stop)
       boot_mesg "Stopping Apcupsd Server..."
       killproc /sbin/apcupsd
       ;;

   reload)
       boot_mesg "Reloading Apcupsd Server..."
       reloadproc /sbin/apcupsd
       ;;

   restart)
       $0 stop
       sleep 1
       $0 start
       ;;

   status)
       statusproc /sbin/apcupsd
       ;;

   *)
       echo "Usage: $0 {start|stop|reload|restart|status}"
       exit 1
       ;;
esac

# End $rc_base/init.d/apcupsd
EOF
chmod -v 754 /etc/rc.d/init.d/apcupsd

Link it into the runlevels:

for link in /etc/rc.d/rc{{0,1,6}.d/K50,{2,3,4,5}.d/S15}apcupsd; do
  ln -sfv ../init.d/apcupsd $link;
done