Frage

Das funktioniert gut, wenn ich es von Hand ausgeführt werden:

#!/bin/bash
eval `ssh-agent`
ssh-add
/usr/bin/scp me@server:~/file ./
exit 0

Wenn jedoch die cron läuft die Datei nie berührt. Ich weiß, die SSH-Schlüssel sind recht - ersetzen, dass scp mit einem ssh und es läuft gut

.
War es hilfreich?

Lösung

cron ist in der Regel als root ausführen, müssen Sie dieses Skript als root getestet, um sicherzustellen, dass der SSH-Schlüssel in der richtigen Position ist, dass root sucht nach? Oder möchten Sie Ihre sshkeys in Ihrem Benutzerprofil haben?

Andere Tipps

Sie können auch unter Verwendung von rsync für diesen Prozess betrachten statt scp'ing die Datei als Cron-Skript.

Nicht sicher, was Version Sie ausführen, aber in Snow Leopard Cron-Jobs als Benutzer ausgeführt (Check mit whoami in Ihrem cron'd Skript) ... zumindest wenn der Benutzer gerade angemeldet ist.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top