| #!/bin/sh |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| PATH=/usr/ucb:$PATH |
| |
| PATH=$PATH:/usr/libexec |
| |
| PATH=$PATH:/usr/lib |
| export PATH |
| |
| |
| OS=`uname -s` |
| GLOBIGNORE=*CVS |
| |
| |
| |
| BASEDIR="/usr/share/logwatch" |
| CONFIGDIR="/etc/logwatch" |
| TEMPDIR="/var/cache/logwatch" |
| PERLEXE="/usr/bin/perl" |
| MANDIR="/usr/share/man" |
| |
| |
| |
| ac_prev= |
| for ac_option |
| do |
| |
| if test -n "$ac_prev"; then |
| eval "$ac_prev=\$ac_option" |
| ac_prev= |
| continue |
| fi |
| |
| ac_optarg=`expr "x$ac_option" : 'x[^=]*=\(.*\)'` |
| |
| case $ac_option in |
| -prefix | --prefix | --prefi | --pref | --pre | --pr | --p) |
| ac_prev=prefix ;; |
| -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*) |
| prefix=$ac_optarg ;; |
| *) |
| echo "Unknown option '$ac_option'" |
| ;; |
| esac |
| done |
| |
| if [ "x$prefix" != "x" ]; then |
| BASEDIR=$prefix |
| munge_base=1 |
| CONFIGDIR=$BASEDIR/etc |
| munge_conf=1 |
| TEMPDIR=$BASEDIR/tmp |
| munge_temp=1 |
| MANDIR=$BASEDIR/man |
| fi |
| |
| |
| |
| printf "#################################\n" |
| printf "Preparing to install Logwatch\n" |
| printf "Enter the path to the Logwatch BaseDir [$BASEDIR] : " |
| read base |
| |
| if [ "$base" = "" ]; then |
| printf "### Using $BASEDIR\n" |
| else |
| BASEDIR="$base" |
| |
| munge_base=1 |
| printf "### Using $BASEDIR [will modify logwatch.pl]\n" |
| fi |
| |
| printf "Enter the path for the Logwatch ConfigDir [$CONFIGDIR] : " |
| read config |
| |
| if [ "$config" = "" ]; then |
| printf "### Using $CONFIGDIR\n" |
| else |
| CONFIGDIR="$config" |
| munge_conf=1 |
| printf "### Using $CONFIGDIR [will modify logwatch.pl]\n" |
| fi |
| |
| printf "Enter the dir name to be used for temp files [$TEMPDIR] : " |
| read temp |
| |
| if [ "$temp" = "" ]; then |
| printf "### Using $TEMPDIR\n" |
| else |
| TEMPDIR="$temp" |
| munge_temp=1 |
| printf "### Using $TEMPDIR [will write to $CONFIGDIR/conf/logwatch.conf]\n" |
| fi |
| |
| printf "Enter the location of perl [$PERLEXE] : " |
| read perlexe |
| |
| if [ "$perlexe" = "" ]; then |
| printf "### Using $PERLEXE\n" |
| else |
| PERLEXE="$perlexe" |
| munge_perl=1 |
| printf "### Using $PERLEXE [will modify logwatch.pl]\n" |
| fi |
| |
| printf "Enter the dir name to used for the manpage [$MANDIR] : " |
| read mandir |
| |
| if [ "$mandir" = "" ]; then |
| printf "### Using $MANDIR\n" |
| else |
| MANDIR="$mandir" |
| printf "### Using $MANDIR [Will try to run makewhatis]\n" |
| fi |
| |
| echo "### Installing" |
| |
| |
| if [ $OS = "Darwin" ]; then |
| munge_gzcat=1 |
| fi |
| |
| |
| |
| install -m 0755 -d $BASEDIR |
| install -m 0755 -d $BASEDIR/dist.conf |
| install -m 0755 -d $BASEDIR/dist.conf/logfiles |
| install -m 0755 -d $BASEDIR/dist.conf/services |
| install -m 0755 -d $BASEDIR/default.conf |
| install -m 0755 -d $BASEDIR/default.conf/logfiles |
| install -m 0755 -d $BASEDIR/default.conf/services |
| install -m 0755 -d $BASEDIR/default.conf/html |
| install -m 0755 -d $BASEDIR/scripts |
| install -m 0755 -d $BASEDIR/scripts/logfiles |
| install -m 0755 -d $BASEDIR/scripts/services |
| install -m 0755 -d $BASEDIR/scripts/shared |
| install -m 0755 -d $BASEDIR/lib |
| install -m 0644 README $BASEDIR/README |
| install -m 0644 HOWTO-Customize-LogWatch $BASEDIR/HOWTO-Customize-LogWatch |
| install -m 0644 conf/*.conf $BASEDIR/default.conf |
| install -m 0644 conf/logfiles/* $BASEDIR/default.conf/logfiles |
| install -m 0644 conf/services/* $BASEDIR/default.conf/services |
| install -m 0644 conf/html/* $BASEDIR/default.conf/html |
| install -m 0755 scripts/logwatch.pl $BASEDIR/scripts/logwatch.pl |
| for i in scripts/logfiles/* ; do |
| if [ `ls $i | grep -v CVS | wc -l` -ne 0 ] ; then |
| install -m 0755 -d $BASEDIR/$i |
| install -m 0644 $i/* $BASEDIR/$i |
| fi |
| done |
| install -m 0644 scripts/shared/* $BASEDIR/scripts/shared |
| install -m 0644 scripts/services/* $BASEDIR/scripts/services |
| install -m 0644 lib/* $BASEDIR/lib |
| |
| if [ $munge_base ]; then |
| perl -pi -e "s%/usr/share/logwatch%$BASEDIR%" $BASEDIR/scripts/logwatch.pl |
| fi |
| |
| |
| install -m 0755 -d $CONFIGDIR |
| install -m 0755 -d $CONFIGDIR/scripts |
| install -m 0755 -d $CONFIGDIR/scripts/services |
| install -m 0755 -d $CONFIGDIR/conf |
| install -m 0755 -d $CONFIGDIR/conf/logfiles |
| install -m 0755 -d $CONFIGDIR/conf/services |
| install -m 0755 -d $CONFIGDIR/conf/html |
| |
| if [ $munge_conf ]; then |
| perl -pi -e "s%/etc/logwatch%$CONFIGDIR%" $BASEDIR/scripts/logwatch.pl |
| fi |
| |
| touch $CONFIGDIR/conf/logwatch.conf |
| touch $CONFIGDIR/conf/ignore.conf |
| touch $CONFIGDIR/conf/override.conf |
| |
| |
| |
| |
| if [ ! -d $TEMPDIR ]; then |
| |
| install -m 0755 -d $TEMPDIR |
| fi |
| |
| |
| if [ $munge_temp ]; then |
| echo "TmpDir = $TEMPDIR" >> $CONFIGDIR/conf/logwatch.conf |
| fi |
| |
| |
| if [ $munge_perl ]; then |
| perl -pi -e "s%/usr/bin/perl%$PERLEXE%" $BASEDIR/scripts/logwatch.pl |
| fi |
| |
| |
| if [ $munge_gzcat ]; then |
| echo "Pathtozcat = gzcat" >> $CONFIGDIR/conf/logwatch.conf |
| fi |
| |
| |
| for f in `echo $PATH | tr : ' '`; do |
| if [ -x "$f/makewhatis" ]; then |
| HAVE_MAKEWHATIS=1; |
| fi; |
| done |
| |
| |
| if [ -d $MANDIR/man5 ] && [ -d $MANDIR/man8 ] && [ -d $MANDIR/man1 ] && [ $HAVE_MAKEWHATIS ]; then |
| install -m 0644 logwatch.8 $MANDIR/man8 |
| install -m 0644 logwatch.conf.5 $MANDIR/man5 |
| install -m 0644 override.conf.5 $MANDIR/man5 |
| install -m 0644 ignore.conf.5 $MANDIR/man5 |
| install -m 0644 postfix-logwatch.1 $MANDIR/man1 |
| install -m 0644 amavis-logwatch.1 $MANDIR/man1 |
| |
| if [ $OS = "OpenBSD" ]; then |
| makewhatis -u $MANDIR/man5 $MANDIR/man8 $MANDIR/man1 |
| else |
| |
| if [ $OS = "FreeBSD" ] || [ $OS = "NetBSD" ]; then |
| makewhatis $MANDIR/man5 $MANDIR/man8 $MANDIR/man1 |
| else |
| |
| if [ $OS = "Darwin" ]; then |
| makewhatis -o "1 5 8" $MANDIR |
| else |
| |
| makewhatis -u -s "1 5 8" $MANDIR |
| fi |
| fi |
| fi |
| else |
| if [ $OS = "SunOS" ]; then |
| |
| mkdir -p $MANDIR/man1m > /dev/null 2>&1 |
| install -m 0644 logwatch.8 $MANDIR/man1m |
| install -m 0644 logwatch.conf.5 $MANDIR/man1m |
| install -m 0644 override.conf.5 $MANDIR/man1m |
| install -m 0644 ignore.conf.5 $MANDIR/man1m |
| install -m 0644 postfix-logwatch.1 $MANDIR/man1 |
| install -m 0644 amavis-logwatch.1 $MANDIR/man1 |
| catman -w -M $MANDIR/man1m |
| else |
| install -m 0755 -d $MANDIR/man1 |
| install -m 0644 postfix-logwatch.1 $MANDIR/man1 |
| install -m 0644 amavis-logwatch.1 $MANDIR/man1 |
| |
| install -m 0755 -d $MANDIR/man5 |
| install -m 0644 logwatch.conf.5 $MANDIR/man5 |
| install -m 0644 override.conf.5 $MANDIR/man5 |
| install -m 0644 ignore.conf.5 $MANDIR/man5 |
| |
| install -m 0755 -d $MANDIR/man8 |
| install -m 0644 logwatch.8 $MANDIR/man8 |
| |
| printf "Installed manpages in $MANDIR/man1, $MANDIR/man5 and $MANDIR/man8.\n" |
| printf "Check your man.cf or man.conf to enable MANSECTS 1, 5 and 8\n" |
| fi |
| fi |
| |
| |
| ln -f -s $BASEDIR/scripts/logwatch.pl /usr/sbin/logwatch |
| printf "Created symlink for /usr/sbin/logwatch \n" |
| |
| |
| if [ -d /etc/cron.daily ]; then |
| rm -f /etc/cron.daily/0logwatch |
| install -m 0755 logwatch.cron /etc/cron.daily/0logwatch |
| printf "Created /etc/cron.daily/0logwatch \n" |
| else |
| install -m 0744 logwatch.cron $CONFIGDIR/logwatch.cron |
| printf "################ README ####################.\n" |
| printf "You need to setup your cron job for logwatch.\n" |
| printf "A sample script is included see $CONFIGDIR/logwatch.cron. \n" |
| printf "2 0 * * * $CONFIGDIR/logwatch.cron >/dev/null 2>&1 \n" |
| fi |
| |
| exit |
| |