Usando la tastiera di Luca Bigliardi, uno sconosciuto ha scritto: > ho fatto uno script di shell che puo' essere lanciato da piu' utenti e > devo far in modo di evitare corse critiche. Quindi ti serve di far un lock. > Per ora ho messo due righe che creano un file quando l'utente entra in > zona critica e poi che lo rimuove quando esce. Che e` quasi La Cosa Giusta(TM). La mia versione della "Cosa Giusta(TM)" fattibile con uno script di shell consisterebbe nel creare un link simbolico in una posizione nota. Se la creazione ha successo, hai ottenuto il lock, se fallisce invece sono altri ad avere il lock. Esempio per rendere l'idea: function lock { [ ! -d /tmp/lockdir ] && mkdir /tmp/lockdir case "$1" in acquire) while true; do ln -s / "/tmp/lockdir/lock" >/dev/null 2>&1 if [ $? -eq 0 ]; then break fi sleep 1 done ;; release) rm -f "/tmp/lockdir/lock" >/dev/null 2>&1 ;; esac } # In caso di terminazione anomala, rilascia il lock. trap "lock release" EXIT # Acquisisci il lock lock acquire ... # Rilascia il lock lock release Questo approccio e` del tutto analogo a quello usato dal sistema in /var/lock... > come posso creare una variabile da una shell e fare in modo > che sia visibile in tutto il sistema? Non puoi. ;-) -- | \ \ | ___|_ |_ | ianezz AT sodalia.it | _ \ | \ | _| / / Visita il LinuxTrent a _|_/ _\_| _|____|___|___| http://www.linuxtrent.it -- Per iscriversi (o disiscriversi), basta spedire un messaggio con SOGGETTO "subscribe" (o "unsubscribe") a mailto:linuxtrent-request@xxxxxxxxxxxxx