Usando la tastiera di fsendmail, uno sconosciuto ha scritto: > diventa root ma tutti i comandi da "echo inizio" in giù non vengono > eseguiti?come si potrebbe fare per farli eseguire? Perche` su avvia una shell annidata dentro quella che ha eseguito su, e l'esecuzione dello script viene giustamente sospesa finche` essa non termina (come qualsiasi altro comando). Forse una cosa del genere fa quello che ti aspetti: #!/bin/sh if [ "$(id -u)" -ne 0 ]; then echo "Devi essere root per eseguire questo script!" exec /bin/su "$0" "$@" fi ... ... ... In breve: se non sei root, ti avverte, e poi fa si` che lo script (il cui nome e` "$0") venga ri-eseguito da su con tutti i parametri ("$@"). Il valore di "$0" non e` affidabile al 100% per individuare il nome dello script eseguito, e dunque non e` il miglior sistema di questo mondo, ma in genere funziona. Viene usato spesso per avviare gli script Tcl, ad esempio [1] [1] Tipicamente: #!/bin/sh # next line starts tclsh \ exec tclsh "$0" "$@" ... <script Tcl> -- | \ \ | ___|_ |_ | matteo.ianeselli AT telecomitalia.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