FSRO
Script de monitoramento de filesystem em read only.
ZABBIX AGENT
UserParameter=check.fsro, /var/lib/zabbix/scripts/fsro /sys/fs/cgroup
SCRIPT
#!/bin/bash
#Alexandre D Amato, Maio 2016
function ARQTEMP() {
case $1 in
criar) mktemp --suffix=-fsro
;;
apagar)
rm -fr $2
;;
esac
}
quantidade=$(ARQTEMP criar)
lista=$(ARQTEMP criar)
cat /proc/mounts | \
awk '{print $2 " " $4}'| \
tr ',' ' ' | \
grep -w ro | \
awk '{print $1}' | \
tee $lista | \
wc -l > $quantidade
quantidadero=$(cat $quantidade)
typeset -i quantidadero
if [ $quantidadero -eq 0 ]
then
echo 0
else
if [ $# -eq 0 ]
then
retorno=$(cat $lista | wc -l)
if [ $retorno -eq 0 ]
then
echo 0
else
echo 1
fi
else
retorno=$(cat $lista | egrep -wv "$(echo $* | tr ' ' '\|')" | wc -l)
if [ $retorno -eq 0 ]
then
echo 0
else
echo 1
fi
fi
fi
ARQTEMP apagar $quantidade
ARQTEMP apagar $lista
Ultima revisão de Damato
Script2, variação do mktemp
#!/bin/bash
#Alexandre D Amato, Maio 2016
function ARQTEMP() {
case $1 in
criar) mktemp /tmp/fsro.XXXXXXXXXX
;;
apagar)
rm -fr $2
;;
esac
}
quantidade=$(ARQTEMP criar)
lista=$(ARQTEMP criar)
cat /proc/mounts | \
awk '{print $2 " " $4}'| \
tr ',' ' ' | \
grep -w ro | \
awk '{print $1}' | \
tee $lista | \
wc -l > $quantidade
quantidadero=$(cat $quantidade)
typeset -i quantidadero
if [ $quantidadero -eq 0 ]
then
echo 0
else
if [ $# -eq 0 ]
then
retorno=$(cat $lista | wc -l)
if [ $retorno -eq 0 ]
then
echo 0
else
echo 1
fi
else
retorno=$(cat $lista | egrep -wv "$(echo $* | tr ' ' '\|')" | wc -l)
if [ $retorno -eq 0 ]
then
echo 0
else
echo 1
fi
fi
fi
ARQTEMP apagar $quantidade
ARQTEMP apagar $lista
Ultima revisão de Damato