Gibt es eine Möglichkeit, programmgesteuert zu überprüfen, ob eine Verbindung zu einem AFP-Server hergestellt wird? Ich habe versucht, den Server zu pingen, aber das führt immer zu einer Zeitüberschreitung.
Bisher ist die einzige Problemumgehung, die ich zum Laufen gebracht habe, folgende:
#!/bin/bash
open "afp://website.com/afpDir/"
until [[ -d /Volumes/afpDir/ ]]; do
echo 'waiting for connections'
sleep 1
done
Dies funktioniert jedoch nur, wenn ich gezielt nach dem afpDir
Verzeichnis suche, während es im Finder geöffnet ist. Gibt es eine zuverlässige Möglichkeit zu überprüfen, ob eine Verbindung zu diesem AFP-Server besteht, oder vielleicht sogar eine zuverlässige IP für den Server zu finden?
Um zu überprüfen, ob eine Verbindung zu einem AFP-Server - mit dem festen Listening-Port 548 - hergestellt wird, verwenden Sie:
netstat -naf inet | grep [.]548[\ ].*ESTAB*
oder mit Anführungszeichen:
netstat -naf inet | grep '[.]548[\ ].*ESTAB*'
mit -naf inet
: keine Namensauflösung, alle Sockets und Beschränkung auf IPv4
und [.]548[\ ].*ESTAB*
(grep for an) <IP-address>.548 ESTABLISHED
. Der [.]
wird benötigt, um Ports wie 2548 oder 10548 auszuschließen. [\ ]
schließt Ports wie 5480 oder 5481 aus. Der .*
verkettet alles (Tabulator/Leerzeichen) zwischen 548 und ESTAB*.
Ein Beispielergebnis sieht so aus:
tcp4 0 0 192.168.1.24.54340 192.168.1.2.548 ESTABLISHED
192.168.1.24 ist dann die IP-Adresse des Clients und 192.168.1.2 die IP-Adresse des Servers.
netstat -naf inet | grep [.]548[\ ].*ESTAB*
selbst wenn bestätigt wird, dass der Server gemountet ist.[.]
ist erforderlich, um Ports wie 2548 oder 10548 auszuschließen. [\ ]
schließt Ports wie 5480 oder 5481 aus. Der .*
verkettet alles (Tabulator/Leerzeichen) zwischen 548 und ESTAB*.netstat -naf inet | grep '[.]548[\ ].*ESTAB*'
Ich hoffe, das war das, was Sie gemeint haben.
Schotte
mount
Befehl auf Ihrem System zurück - sowohl wenn der AFP-Server verbunden als auch getrennt ist?Micks Ketsch
//username@website.com/homedir on /Volumes/homedir (afpfs, nodev, nosuid, quarantine, mounted by localuser)
und es ist weg, wenn ich abmelde.Schotte
mount
Die Verwendung und Analyse der Ergebnisse ist also eine weitere Möglichkeit.Micks Ketsch