Newsgroup: it.comp.os.linux.development
Titolo: Esecuzione script da cron

Ciao,
dovrei lanciare uno script Bash periodicamente, quindi pensavo di 
schedularlo utilizzando Cron. Se provo a lanciarlo manualmente (non con i
privilegi di root) ad un certo punto dell'esecuzione si interrompe poichè
l'utente non ha i privilegi necessari per eseguire determinate operazioni
indicate nello script, mentre se accedo come root ed eseguo lo stesso
script il tutto funziona bene naturalmente. Ora il mio dubbio è...se uso
Cron per schedulare l'operazione è possibile indicare con quali permessi
eseguire lo script?? Forse mi sto perdendo in un bicchiere d'acqua ma
sinceramente la cosa mi crea confusione.
Grazie a tutti.
Carlo

 writes:
[...]
  CS> tutto funziona bene naturalmente. Ora il mio dubbio è...se uso
  CS> Cron per schedulare l'operazione è possibile indicare con quali
  CS> permessi eseguire lo script?? Forse mi sto perdendo in un
  CS> bicchiere d'acqua ma sinceramente la cosa mi crea confusione.
Usa "sudo", non prosciughera` l'acqua, pero` forse evitera` di farti
annegare :-)
Ciao,
nico

Il Thu, 04 Dec 2003 10:43:28 +0100, nel NG it.comp.os.linux.development, 
Carlo Sette cosi' parlo':

Ogni utente del sistema (e qui con utente comporendo anche root) ha la
sua crontab personale.  Se sei root con crontab -e editi la crontab di
root,  se  sei  pippo  editi  la  crontab  di  pippo;  lascia  perdere
/etc/crontab  che  IMHO  crea   solamente  confusione  (e  difatti  in
Slackware non c'e' ;-)).  
La  crontab di  root eseguira'  processi come  se fosse  l'utente root
stesso a  lanciarli (stai attento solo  al PATH ed  ad altre variabili
d'ambiente che non vengono impostate in cron), viceversa la crontab di
pippo eseguira' i comandi come se fosse l'utente pippo.
HTH
-- 
Sono un servitore del Fuoco Segreto, e reggo la fiamma di Anor.
A nulla ti servira' il fuoco oscuro, fiamma di Udun.
Torna nell'Ombra! Non puoi passare.

 eseguire lo script??
Ciao Carlo,
   no: lo script viene sempre eseguito come tale e secondo il setup ed i
privilegi del propietario della crontab.
   Tre possibili soluzioni al tuo problema:
1) sudo (come gia` indicato);
2) setta il suid per lo script e metti root come proprietario (pericoloso...);
3) metti le operazioni "vietate" in uno script di root e col suid bit on
(pericoloso ma meno della precedente).
Ciao,
-- 
       Roberto Divia`             Love at first sight is one of the greatest
       =============             labour-saving devices the world has ever seen.
Mailbox: C02110                 CERN-European Organization for Nuclear Research
E-mail: 
Robert...@cern.ch
           CH-1211 GENEVE 23, Switzerland

Grazie a tutti per le dritte,
ho optato per la soluzione 2 cioè crontab -e da utente root.
Cmq terrò ben presenti anche le altre suggerite....non si sa mai.
Grazie ancora.
Carlo


 writes:
  CS> Grazie a tutti per le dritte, ho optato per la soluzione 2 cioè
  CS> crontab -e da utente root.  Cmq terrò ben presenti anche le
  CS> altre suggerite....non si sa mai.
Non per essere pesante, ma la soluzione risolve il problema creandone
altri. Continuo a suggerirti sudo, non e' per nulla complesso da
utilizzare e mi sembra che su uno dei siti di mandrake ci sia essere
un documento che spiega in maniera semplice come usarlo.
Se non dovessi trovarlo, puoi scrivere al mio indirizzo, te lo mando
perche` dovrei riuscire a recuperarlo.
Ciao,
nico