#!/bin/bash ################################################ ### Managed by someone's ansible provisioner ### ################################################ # Part of: https://git.somenet.org/root/pub/somesible.git # 2017-2024 by someone # if [ "$1" = "autoconf" ]; then echo "yes" exit 0 fi if [ "$1" = "config" ]; then echo "graph_title Lifetime bytes read and written" echo "graph_info This graph shows the bytes read and written per disk as reported by SMART" echo "graph_category disk" echo "graph_vlabel Lifetime bytes read (-) / written (+)" cd /sys/block/ for f in *; do HD_NAME=$(lsblk -S "/dev/$f" -o MODEL,SERIAL | tail -q -n-1 | sed -Ee 's#-#_#g' -e's# #-#g') if [ "-${HD_NAME}-" != "--" ]; then echo "${HD_NAME}_r.draw LINE2" echo "${HD_NAME}_r.min 0" echo "${HD_NAME}_r.label ${HD_NAME} not displayed" echo "${HD_NAME}_r.graph no" echo "${HD_NAME}_w.draw LINE2" echo "${HD_NAME}_w.min 0" echo "${HD_NAME}_w.label /dev/${f}" echo "${HD_NAME}_w.negative ${HD_NAME}_r" fi done # echo "graph_printf %.0lf" # echo "graph_scale no" echo "graph_args -l 0" exit 0 fi cd /sys/block/ for f in *; do HD_NAME=$(lsblk -S "/dev/$f" -o MODEL,SERIAL | tail -q -n-1 | sed -Ee 's#-#_#g' -e's# #-#g') if [ "-${HD_NAME}-" != "--" ]; then echo "${HD_NAME}_w.value $(tail -q -n-1 "/var/lib/smartmontools/attrlog.${HD_NAME}.ata.csv" 2>/dev/null | sed -Ee 's/^.*\t241;[0-9]+;([0-9]+);.*$/\1*512/' | bc)" echo "${HD_NAME}_r.value $(tail -q -n-1 "/var/lib/smartmontools/attrlog.${HD_NAME}.ata.csv" 2>/dev/null | sed -Ee 's/^.*\t242;[0-9]+;([0-9]+);.*$/\1*512/' | bc)" fi done exit 0