Netzlauferke mit Applescript mounten

Dieses Thema im Forum "Scripting und Automatisierung" wurde erstellt von chris_crack77, 12.02.2006.

  1. chris_crack77

    chris_crack77 Thread Starter MacUser Mitglied

    Beiträge:
    175
    Zustimmungen:
    0
    MacUser seit:
    20.11.2004
    Hallo Leute

    bin ein absoluter Neuling in Sachen Applescript; kenn mich leider mit Netzwerken auch nicht so gut aus :(

    Haette aber zu gern nach dem Ruhezustand automatisch meine Netzlaufwerke wieder verbunden. Hab hier schon oefter gelesen, dass sich das mit nem Applescript hinbekomme. Um dies nach dem Ruhezustand moeglich zu machen, hab ich mir DisplayWatcher (http://www.brunchboy.com/displaywatcher.shtml) runtergeladen. DisplayWatcher kann nach dem aufwachen automatisch Programme ausfuehren. Da haette ich dann an ein Applescript zum mounten meiner Netzlaufwerke gedacht.

    Leider weiss ich nicht viel von Netzwerken und vom Applescript schon gleich garnich. Ich find nur solche Hinweise wie diese, die auch nicht weiter erklaert sind:

    in /System/Libary/StartupItems/Network/Network

    in der funktion "Start"
    /sbin/mount_smbfs -u localusername -g localgroup -U remoteusername
    //remoteusername:remotepass@ip/freigabe /Volumes/mountpoint 2>&1

    oder eben per afs (parameter fast gleich)


    Was bedeutet das und wie kann ich konkret Laufwerke mounten (per Applescript), die auf meiner Dose mit der IP 192.198.0.102 sind?

    Vielleicht weiss ja jemand was eleganteres...

    cHRIS
     
  2. Kryptaesthesie

    Kryptaesthesie MacUser Mitglied

    Beiträge:
    573
    Zustimmungen:
    6
    MacUser seit:
    17.05.2004
    zB so...

    Hallo.
    Hier mal ein Beispielscript, mit dem ich meine Volumes mounte:
    Code:
    try
    	set t to do shell script "ping -c 1 192.168.0.1"
    	if t contains "0% packet loss" then
    		tell application "Finder"
    			
    			activate
    			mount volume "smb://GRP01;gerrit:12345@192.168.0.1/Datenplatte"
    
    		end tell
    	end if
    end try
    
    Es wird erst überprüft, ob die IP erreichbar ist. Dafür ist das pingen zuständig.
    Nur wenn das erfolgreich ist, wird eine Verbindung hergestellt.
    Der Mount-Befehl an sich ist folgendermaßen aufgebaut:
    Code:
    mount volume "smb://ARBEITSGRUPPE;BENUTZER:PASSWORT@SERVER-IP/FREIGABENAME"
    
    Du kannst den oberen Code kopieren und musst noch deine Werte anpassen.
    Du schreibst dein Apple-Script mit dem Script-Editor und musst beim Speichern bei 'Dateiformat' "Programm" auswählen und alle Häkchen deaktivieren. Natürlich gibt es da verschiedenste Möglichkeiten. So hast du allerdings zB noch die Möglichkeit, das Script noch zu ändern, bzw. noch zu erweitern.

    MfG der Gerrit
     
  3. chris_crack77

    chris_crack77 Thread Starter MacUser Mitglied

    Beiträge:
    175
    Zustimmungen:
    0
    MacUser seit:
    20.11.2004
    Danke :) das hilft mir schon mal viel mehr weiter - ich werd's gleich mal ausprobieren.

    cHRIS
     
  4. chris_crack77

    chris_crack77 Thread Starter MacUser Mitglied

    Beiträge:
    175
    Zustimmungen:
    0
    MacUser seit:
    20.11.2004
    Es funtioniert! :D

    Kannst du mir noch sagen, wie ich gleich mehrere Laufwerke mounten kann? Hab ausprobiert einfach nochmal die Zeile
    mount volume "smb://GRP01;gerrit:12345@192.168.0.1/Datenplatte"
    einzugeben - mit und ohne activate davor. Leider hat er mir immer nur die erste Platte gemountet. Was muss ich fuer weitere Platten machen?

    cHRIS
     
  5. chris_crack77

    chris_crack77 Thread Starter MacUser Mitglied

    Beiträge:
    175
    Zustimmungen:
    0
    MacUser seit:
    20.11.2004
    Ok...hab das Problem gefunden. Er mountet die zweite Platte nicht, wenn die erste schon vor Scriptstart gemountet war. Spielt fuer mich aber keine Rolle, da ich eh immer beide Platten mounten will.

    Leider kann ich komischerweise den Startdialog nicht ausschalten. Der Haken beim Speichern geht einfach nicht weg. Und dadurch kommt den immer so ein stressiges Startbild. Was kann ich dagegen machen?

    cHRIS
     
  6. HäckMäc_2

    HäckMäc_2 MacUser Mitglied

    Beiträge:
    4.196
    Zustimmungen:
    269
    MacUser seit:
    26.04.2005
    Das könnte z.B. so aussehen:
    Code:
    on run
      tell application "Finder"
        activate
          try
            -- Netzlaufwerk auf dem Server verbinden
            mount volume "smb://Benutzer:Passwort@IP-Adresse-Server/Freigabename1"
            mount volume "smb://Benutzer:Passwort@IP-Adresse-Server/Freigabename2"
          on error
            --Die Verbindung konnte nicht hergestellt werden
          end try
        end tell
    end run
     
  7. HäckMäc_2

    HäckMäc_2 MacUser Mitglied

    Beiträge:
    4.196
    Zustimmungen:
    269
    MacUser seit:
    26.04.2005
    Klicke nicht auf das Kästchen bei "Startdialog", sondern auf den Text.
    Dann geht's.
     

    Anhänge:

  8. Kryptaesthesie

    Kryptaesthesie MacUser Mitglied

    Beiträge:
    573
    Zustimmungen:
    6
    MacUser seit:
    17.05.2004
    Bei mir kommt kein Startbild.
    Ich kann nachher noch mal schauen, wie du genau speichern musst.
    Muss nu leider schnell weg.


    MfG Gerrit
     
  9. Pingu

    Pingu MacUser Mitglied

    Beiträge:
    4.894
    Zustimmungen:
    341
    MacUser seit:
    04.08.2003
    Ich würde jeden mount in eigenen try-Block setzen. Denn sonst würde er die weiter hinterliegenden Mounts nicht probieren, wenn einer der weiter vorne liegenden fehl schlägt, z. B. weil der jeweilige Server gerade nicht erreichbar ist.

    @Kryptaesthesie
    Das Ping kann man sich sparen. Denn durch den try-Block versucht er zu mounten und wenn es fehl schlägt es halt fehl.

    Pingu
     
  10. chris_crack77

    chris_crack77 Thread Starter MacUser Mitglied

    Beiträge:
    175
    Zustimmungen:
    0
    MacUser seit:
    20.11.2004
    Danke euch allen. :)

    Jetzt funzt alles! Wie HäckMäcn gesagt hat, ist der Startdialog auch verschwunden, nachdem ich direkt auf den Text geklickt hab - welch ein banaler Programmierfehler.

    cHRIS
     
    Zuletzt bearbeitet: 12.02.2006
Die Seite wird geladen...

Diese Seite empfehlen