Was tue ich falsch?

ObiTobi

Aktives Mitglied
Thread Starter
Dabei seit
05.11.2009
Beiträge
1.536
Reaktionspunkte
91
Hallo,

ich habe mir von diesen Seiten

http://hohabadu.de/?APPLESCRIPT/Tools#sleepwatcher
Abschnitt: Scriptstart bei Ruhezustand/Aufwachen/Inaktivität

http://hohabadu.de/?APPLESCRIPT/Erkl%E4rende-Scripts/Netzwerk-Laufwerke-%2F-Volumes-mounten

http://www.bernhard-baehr.de/

Beschreibung, Script und daemon runtergeladen.
Idee war - alle Windows Freigaben "automatisch" zu mounten.
Da ich von den Apple-Script usw. 0 Ahnung habe, habe ich auch keine Ahnung warum es nicht läuft. Also das Script was die Freigaben mounten soll, läuft ja. Wenn ich es als z.B wakeup (Programm) speichere kann ich es mit doppelklick im Finder ausführen.

Alles was den daemon angeht scheint nicht zu funktionieren. Daemon an sich läuft ja "/usr/local/sbin/sleepwatcher -d -V -s /etc/rc.sleep -w /etc/rc.wakeup"

Jetzt kommt etwas was ich überhaupt nicht verstehe: In der Datei /etc/rc.wakeup steht u.a

for user in `echo 'show State:/Users/ConsoleUser' | scutil | awk '/kCGSSessionUserNameKey/ { print $3 }'`; do
home=`eval echo ~$user`
if [ -x "$home/.wakeup" ]; then
logger -t $0 "executing .wakeup of user $user"
su - $user -c "$home/.wakeup"
fi
done

Wenn ich aber mein Script als .wakeup speichere dann wird ein Verzeichnis erstellt mit dem Namen .wakeup.app

Wo musste ich ggf. die LogMeldungen zu dem ganzen finden können. Wie kann ich am besten jetzt vorgehen um die Fehlerquelle zu lokalisieren?

Danke für Ideen Tobi
 
Hallo,

inzwischen habe ich herausfinden können, dass das 7etc/rc.wakeup an sich ausgeführt wird. Vor dem "if" habe ich einfach "say "Script activated"
eingebaut ;)

Wenn ich z.B folgendes eingebe:
/etc/rc.wakeup start

bekomme ich

-bash: /Users/robert/wakeup.app: is a directory

was auch richtig ist. Ist das überhaupt so machbar bzw. wie ruft man ein Apple-Script aus der Shell auf?

Tobi
 
Ich bin wieder ein kleines Stückchen weiter, nach "Aufwachen" wird im system.log geschrieben "Jan 8 23:12:44 mymbp001 /etc/rc.wakeup[312]: executing wakeup.app of user tobi"

Leider führt es nicht zu erwünschtem Ergebnis :(

Ich habe die /etc/rc.wakeup wie folgt verändert:

#!/bin/sh
sleep 15
for user in `echo 'show State:/Users/ConsoleUser' | scutil | awk '/kCGSSessionUserNameKey/ { print $3 }'`; do
home=`eval echo ~$user`
if [ -x "$home/wakeup.app" ]; then
logger -t $0 "executing wakeup.app of user $user"
/usr/bin/osascript -e "$home/wakeup.app"
fi
done

Wenn ich jetzt in einer Shell /etc/rc.wakeup eingebe - werden die Freigaben alle zugeordnet. Automatisch passiert es leider nicht.
 
Zurück
Oben Unten