Suche Linux Bash Skript um SMB Mount bzw. SMB Laufwerk zu testen bzw. validieren
Es wird ein Linux Bash Skript gesucht, welches ein anzugebendes SMB Laufwerk auf Verfügbarkeit testet - das ganze soll z.B. als crontab Eintrag regelmäßig aufgerufen werden.
Guten Tag,
wie im Vorwort erwähnt, wird ein Bash Skript gesucht, welches ein anzugebendes Samba Laufwerk auf Verfügbarkeit testet.
Ein erster eigen programmierter Ansatz scheint an einem nicht zurückkehrenden "touch"-Befehl zu scheitern, sollte das SMB-Laufwerk ausgefallen sein (es wurden 6300 Prozesse durch crontab erzeugt und schließlich ist der Server abgeschmiert).
Folgende Konfiguration wurde ausprobiert:
#!/bin/bash
#
MOUNT="/NL";
sh smb_test.sh $MOUNT;
if [ $? -eq 1 ]; then
echo `date` " [FEHLER]: " $MOUNT " ist nicht verfügbar."; >> smb.mon.log;
fi
#!/bin/bash
#
Guten Tag,
wie im Vorwort erwähnt, wird ein Bash Skript gesucht, welches ein anzugebendes Samba Laufwerk auf Verfügbarkeit testet.
Ein erster eigen programmierter Ansatz scheint an einem nicht zurückkehrenden "touch"-Befehl zu scheitern, sollte das SMB-Laufwerk ausgefallen sein (es wurden 6300 Prozesse durch crontab erzeugt und schließlich ist der Server abgeschmiert).
Folgende Konfiguration wurde ausprobiert:
crontab -l - Start<<
- * * * * sh /monitor/smb_monitor.sh
crontab -l - Ende<<
smb_monitor.sh - Start<<
#
- Initiiert für alle Einträge von >MOUNT< eine Prüfung
- ####################################################
- Einzelne Aufrufe der zu Überwachenden Mountpunkte
- >> sh smb_test.sh >Mountpunkt< <<
MOUNT="/NL";
sh smb_test.sh $MOUNT;
if [ $? -eq 1 ]; then
echo `date` " [FEHLER]: " $MOUNT " ist nicht verfügbar."; >> smb.mon.log;
fi
smb_monitor.sh - Ende<<
smb_test.sh - Start<<
#
- smb_test.sh
- ***
- Testet ein übergebenes SMB-LW
- Parameterübergabe an test_smb.sh:
- $1 = lokaler Pfad zum Mountpunkt
- Konfiguration des Verzeichnis
- .. der Debug-Logdatei
- .. der Error-Logdatei
- .. der Test-Datei
- Prüfe korrekte Anzahl an Parametern
- Falsche Anzahl an Parametern, exit
- Lese die Existenz der TESTDATEI
- Wenn die Datei existiert und gelesen werden kann,
- muss das SMB-LW i.O. sein
- Ansonsten: versuche die LOCKDATEI zu schreiben
- Prüfe erneut die LOCKDATEI
- Die Datei wurde geschrieben, also muss SMB-LW i.O sein
- Die Datei wurde immer noch nicht geschrieben - das SMB-LW
- muss defekt sein!
exit 1;
fi
exit 0;
else
touch $1/$LOCKNAME
if [ -f $1/$LOCKNAME ]; then
exit 0;
else
echo `date` ": [DEBUG] Test des SMB-LW "$1" fehlgeschlagen - Exit 1" >> $DEBLOG;
exit 1;
fi
fi
smb_test.sh - Ende<<
Für Korrekturvorschläge oder Hinweise auf bereits erstellte Lösungen um ein SMB-LW zu Überwachen danke ich sehr.
Mit freundlichen Grüßen
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 152928
Url: https://administrator.de/contentid/152928
Ausgedruckt am: 25.11.2024 um 23:11 Uhr