/usr/lib/news/bin/innstat is in inn 1:1.7.2q-41build1.
This file is owned by root:root, with mode 0o755.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 | #! /bin/sh
## $Revision: 1.12 $
## Display status of INN.
## Written by Landon Curt Noll <chongo@toad.com>.
## =()<. @<_PATH_SHELLVARS>@>()=
. /usr/lib/news/innshellvars
SYSLOG_CRIT=news.crit
SYSLOG_ERR=news.err
SYSLOG_NOTICE=news.notice
SYSLOGS="${SYSLOG_CRIT} ${SYSLOG_ERR} ${SYSLOG_NOTICE}"
## Set up the list of log files.
LOGS="${SYSLOGS}"
if [ -f "${MOST_LOGS}/`basename ${ERRLOG}`" ]; then
LOGS="${LOGS} `basename ${ERRLOG}`"
else
LOGS="${LOGS} ${ERRLOG}"
fi
if [ -f "${MOST_LOGS}/`basename ${LOG}`" ]; then
LOGS="${LOGS} `basename ${LOG}`"
else
LOGS="${LOGS} ${LOG}"
fi
## Show INND status.
echo 'Server status:'
ctlinnd mode 2>&1
## Show disk usage. You might have to change this.
echo ''
echo 'Disk usage:'
${INNDF} ${SPOOL} ${OVERVIEWDIR} ${NEWSLIB} ${INCOMING} ${BATCH} ${MOST_LOGS} |
grep '^/' | sort -u
## Show size of batch files.
echo ''
echo 'Batch file sizes:'
( cd ${BATCH}; ls -Cs | tail -n +2 )
## Show size of log files.
echo ''
echo 'Log file sizes:'
( cd ${MOST_LOGS}; ls -Cs ${LOGS} *.log 2>&1 )
## Show the lock files
echo ''
( cd ${LOCKS}
set -$- LOCK.*
if [ -f "$1" ]; then
echo 'Lock files:'
ls -C LOCK.* 2>&1
else
echo 'Innwatch is not running'
fi
)
echo ''
echo 'Server connections:'
ctlinnd -t60 name '' 2>&1 \
| ${SED} -e '/^[ ]*$/d' -e '/:file$/d' -e '/^remconn:/d' \
-e '/^control:/d' -e '/^localconn:/d' \
| ${AWK} '{print length($0), $0}' \
| sort -n \
| ${SED} 's/^[0-9][0-9]* *//' \
| ${AWK} '
BEGIN {
linelen = 0;
}
{
len = length($0);
if (len >= 80) {
end = "";
}
else if (len >= 72) {
end = "";
len += (8 - len % 8);
}
else if (len >= 64) {
end = "";
len += 8 + (8 - len % 8);
}
else if (len >= 56) {
end = "";
len += 8 + (8 - len % 8);
}
else if (len >= 48) {
end = "";
len += 8 + (8 - len % 8);
}
else if (len >= 40) {
end = "";
len += 8 + (8 - len % 8);
}
else if (len >= 32) {
end = "";
len += 8 + (8 - len % 8);
}
else if (len >= 24) {
end = "\t";
len += 8 + (8 - len % 8);
}
else if (len >= 16) {
end = "\t\t";
len += 8 + (8 - len % 8);
}
else if (len >= 8) {
end = "\t\t";
len += 8 + (8 - len % 8);
}
else {
end = "\t\t\t";
len += 16 + (8 - len % 8);
}
if (len + linelen > 80) {
printf("\n");
linelen = len;
}
else {
linelen += len;
}
printf("%s%s", $0, end);
}
END {
if (end != "\n") {
printf("\n");
}
}'
|