• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

smbmount auf Winodws XP

mehlbox

Newbie
Hallo zusammen,

mache mit smbmount //server/freigabe /mnt/freigabe -o fmask=0660,username=xxx,password=yyy einen Mount auf eine Windowsfreigabe.

Nun habe ein Script geschrieben welches Abfragen soll ob die Freigabe auf einem Windows XP Rechner vorhanden ist. Das klappt auch super wenn die Freigabe da ist.
Wenn aber die Freigabe weg ist, habe ich festgestelt, muss erstmal zwingend ein smbumount gemacht werden und dann ein neues smbmount.

Wenn aber nun die Freigabe länger weg ist, möchte ich, das das Script mir sagt, wollte mounte geht nicht und eine Mail sendet. Doch bleibt das Script hängen da ja nichts zu mounten da ist , wie kann ich das mit einem Script abfangen??

Danke

Das Script:
#!/bin/sh

#Abfrage ob bereits gemountet ist
if test -d /mnt/server/NichtLoeschen!
then
echo " Das Windowsverzeichnis ist bereits gemounted"
exit 1
else
echo " Das Windowsverzeichnis ist nicht gemountet! Bitte die Freigabe auf dem Server ueberpruefen gegebenfalls Freigabe neu starten!!" |mail -s "Zugriff auf Windowsserver funktioniert nicht!" xyxy@blabla.de

# Unbedingt Unmounten erzwingen
smbumount /mnt/server

# Mounten durchfuehren <<< das geht nicht da ja nichts da ist wie kann ich sowas abfangen??
smbmount //name_des_servers/orders /mnt/server -o fmask=0660,username=mister,password=beispiel

# Abfrage ob Zugriff geklappt hat
if test $? -ne 0
then
mail -s "Zugriff auf Server nicht moeglich Freigabe pruefen !!" xyxy@blabla.de
echo "Zugriff auf Windowsverzeichnis fehlgeschlagen"
exit 1
else
exit 0
fi
fi

Danke für Eure Hilfe und Tips

Gruß mehlbox
 
Sofern das noch aktuell ist, mit

Code:
 smbclient -L mainframe -N |grep public && smbmount ...

kann das Ausführen von smbmount vom Existieren eines shares abhängig gemacht werden. Allerdings müssten die Namen des windows-Rechners und der Freigabe so gewählt sein, dass grep da nicht "verwirrt" wird. Der Rechner sollte zB nicht "Server" heissen, und die Freigabe nicht "Service".

In diesem Fall heisst der Rechner "mainframe" und das share "public".
 
Oben