Pages : 1
#1 Le 06/05/2019, à 16:21
- ethan7888
script manque d'espace disque en notification email
Bonjour à tous,
Je souhaite mettre un script en place pour m'alerter d'un problème d'espace disque sur le serveur, est ce possible avec un script relativement simple (Noob puissance 1000 sur les scripts shell ^^)?
Merci d'avance
Ethan7888
Hors ligne
#2 Le 08/05/2019, à 15:00
- bruno
Re : script manque d'espace disque en notification email
Bonjour,
Tu trouveras des dizaines d'exemples de script pour faire cela sur le web.
Ex : https://www.cyberciti.biz/tips/shell-sc … space.html
#3 Le 08/05/2019, à 15:09
- Watael
Re : script manque d'espace disque en notification email
ils ne sont pas terrible (je me retiens pour ne pas dire le fond de ma pensée) ces scripts : grep | awk, c'est vraiment merdique (bis).
dans cs cas là on utilise awk tout seul.
Dernière modification par Watael (Le 08/05/2019, à 15:10)
Connected \o/
Welcome to sHell. · eval is evil.
Hors ligne
#4 Le 08/05/2019, à 15:25
- bruno
Re : script manque d'espace disque en notification email
J'ai pris le premier lien qui me soit tombé sous la main
Un autre : https://lb9mg.no/2018/06/22/disk-space- … with-bash/
#5 Le 08/05/2019, à 15:38
- Watael
Re : script manque d'espace disque en notification email
pareil :grep | awk
Connected \o/
Welcome to sHell. · eval is evil.
Hors ligne
#6 Le 08/05/2019, à 19:12
- bruno
Re : script manque d'espace disque en notification email
Exact. Mais bon cela doit fonctionner me si ce n'est pas très propre.
C'est marrant quand on cherche ce genre de chose on trouve des dizaines de sites qui proposent des scripts. Mais en y rgardant de plus près tous ces scripts se ressemblent étrangement et semble tous dériver d'un ou deux modèles
Bon j'ai quand même essayé de faire plus simple et plus propre mais comme je suis nul en script awk, il y a a sûrement mieux :
#!/bin/bash
alert_threshold=90
disks_usage=($(df | awk '{ { if ($i ~ /^\/dev/) printf ("%s,%i\n",$6,$5); } }'))
for i in "${disks_usage[@]}"
do
usage_and_mount_point=(${i//,/ })
if [ ${usage_and_mount_point[1]} -ge $alert_threshold ]; then
echo "${usage_and_mount_point[1]}"% used on "${usage_and_mount_point[0]}"
fi
done
À appeler dans avec un tâche cron par exemple.
#7 Le 08/05/2019, à 23:51
- Watael
Re : script manque d'espace disque en notification email
pfiou !
df -l -x tmpfs -x devtmpfs --output=target,pcent | awk 'NR>1 && int($2)>=limit{print $1,"limite atteinte"}' limit=90
Connected \o/
Welcome to sHell. · eval is evil.
Hors ligne
#8 Le 09/05/2019, à 06:40
- bruno
Re : script manque d'espace disque en notification email
Merci.
Bel exemple d'efficacité et de concision tout en restant parfaitement lisible
Pages : 1