Pol Hallen scrisse in data 05/04/2013 14:48:
> [...]
>
> ma il problema è: se mentre rsync è in esecuzione cade la rete (o
> altro), rsync si blocca e il PID file non viene rimosso, ergo rsync
> avviato da cron il giorno successivo non partirà più.
>
> Qualche idea?
>
Non ho ben capito cosa faccia rsync quando cade la rete... se si blocca
allora sei tu a killare il tuo processo è giusto?
Io comunque in queste situazione uso il comando trap; qualcosa come:
#!/bin/bash
[...]
# inizio fase critica
lock_path=/.../.../...
if [ -e $lock_path ]; then
$logger "E: another instance of $(basename $0 .sh) is running: exit
forced"
exit 1
fi
main_trap_exit="rm -f $lock_path"
trap "{ $main_trap_exit; exit 1 }" INT TERM EXIT
echo $$ > $lock_path
[inserisci qui il tuo codice critico]
eval $main_trap_exit
trap - INT TERM EXIT
Ciao
Piviul
--
Per REVOCARE l'iscrizione alla lista, inviare un email a
[email protected] con oggetto "unsubscribe". Per
problemi inviare un email in INGLESE a [email protected]
To UNSUBSCRIBE, email to [email protected]
with a subject of "unsubscribe". Trouble? Contact [email protected]
Archive: http://lists.debian.org/[email protected]