Ich stelle euch hier mein Script zur Festplattenfüllanzeige meiner Server zur verfügung, da viele meiner Freunde das Script von mir wünschten.
Ich habe das script auf meinen Server in der .bashrc Datei hinterlegt und es zeigt nach dem Login auf den Server, auch via SSH, werden die Fülldaten aller eingebundenen Datenträger angezeigt.
Die Farben der Rahmen wird bei einer Belegung von 80% nicht mehr grün sondern gelb und ab sowie ab 90% Festplattenfülle in Rot dargestellt.
Die Breite der Darstellung passt sich beim Aufruf automatisch der im Terminalfenster verfügbaren Breite des Fensters an.
Auf meinem CL-25B2 NAS habe dieses Script, anstelle der .bashrc Datei in der Datei /etc/profile.local hinterlegt, so das die Festplattenfüllanzeige bei jedem Login angezeigt wird, nicht nur bei einem bestimmten Benutzer.
Für Verbesserungsvorschläge bin ich immer Dankbar, diese bitte in die Kommentare 😉
#!/bin/bash
# Ausgabe eines Statusbalkens
statusbalken() {
if [ $# != 1 ]
then
exit;
fi
used=$(df "$1"|tail -n 1|awk '{print $3}')
total=$(df "$1"|tail -n 1|awk '{print $2}')
e=$(printf "\033")
end="$e[0m"
COLUMNS=$(tput cols)
COLUMNS=$((COLUMNS-9))
PERCENT=$(echo "$used $total 100"|awk '{printf ("%i", $1/$2*$3 )}')
percent=$(echo "$used $total $COLUMNS"|awk '{printf ("%i", $1/$2*$3 )}')
COLOR="$e[1;31m"
if [[ $PERCENT -lt 90 ]] ;then
COLOR="$e[1;33m"
fi
if [[ $PERCENT -lt 80 ]] ;then
COLOR="$e[1;32m"
fi
printf " Disk usage: %s\n ${COLOR}[${end}" "$1"
for (( i=0; i< percent; i++ ))
do
printf "%b" "#"
done
for (( i=percent; i<COLUMNS; i++ ))
do
printf "%b" "-"
done
printf "${COLOR}]${end}%3d%%\n" "$PERCENT"
}
# Laufwerke ermitteln
drives=$(mount|grep -E '^\/'|awk '{print $3}')
for var in $drives
do
statusbalken "$var"
done
Da im WordPress die Formatierung von Shellscripten immer ungewünscht „angepasst“ wird, zusätzlich hier noch ein Download-Link für das Script.: http://dl.loteks.de/drives.sh