Newsgroup: it.comp.os.linux.sys
Titolo: Automatismi sui files, cron e script...

Salve a tutti
Sto preparando un picoclo file server per l'azienda in cui lavoro. 
Principalmente useremo Samba, che gestira' una serie di cartelle condivise 
con le macchine Win98/ME/2000/XP presenti nella LAN.
Alcune cartelle hanno permessi di lettura/scrittura, una e' privata per ogni 
utente (la home, generata secondo l'esempio presente nel smb.conf 
"originale") ed una ho deciso che sara' una dir pubblica in tutto e per 
tutto, che piuě pubblica di cosi' non si puo' :)
In pratica ho pensato ad una cartella "Condivisione" unica per tutti gli 
utenti della LAN (una 15ina), che servira' solo per scambiarsi files al volo 
(ora come ora ognuno ha una dir "Condivisione" all'interno della sua macchina 
Windows, con relativa confusione nel momento in cui "vieni a prenderti il 
files in condivisione da me...")
Questa cartella inoltre, visto che verra' vista ne' piu' ne' meno come 
cartella temporanea, verra' svuotata mensilmente tramite un semplice comando 
temporizzato "rm -fr /usr/share/public/". Visto che sono circondato da gente 
che e' gia' qualcosa se trova il tasto destro del mouse :) , data cartella 
verra' anche backuppata tramite tar per i primi mesetti, cosi' gli do' il 
tempo di farci l'abitudine senza incorrere in pericoli.
E qui siamo al punto. Cosi' gia' mi va bene, ma se io volessi cancellare i 
files (e le sottodir) dopo un mese di "anzianita'", invece che il primo del 
mese?
Cioe'... creando il comando di cancellazione dentro /etc/cron.monthly 
l'operazione dovrebbe venire svolta ogni primo del mese, giusto?
Se io invece volessi fare in modo che ogni singolo file sia cancellato dopo 
30 giorni dalla sua creazione, indipendentemente dalla data sul calendario?
Potete darmi un consiglio? Un modo di agire? Aggiungo che se mi suggerite uno 
script, vi rispondo che i comandi della bash ancora non li conosco, sicche' 
gradirei qualcosa di preparato o quasi :)
Sono cmq ben accetti anche consigli sulla configurazione in generale di un 
file server con Samba :)
La linea di configurazione della dir sotto Samba e':
[Condivisione]
   path = /usr/share/public
   comment = Cartella TEMPORANEA a disposizione di tutti gli utenti per 
interscambio di files. * * ATTENZIONE !! * * Il suo contenuto si cancella 
automaticamente OGNI PRIMO DEL MESE!!!
   guest ok = yes
   writable = yes
Grazie infinite a chi vorra' aiutarmi :)
-- 
  //  Cristian Castellari        ICQ UIN: 26018693 
\X/   Antispam:  cristian (at) skyflash (punto) it    
         * * * PGP Public Key Available * * *

 mese?
Mi rispondo da solo per mettere al vaglio questo suggerimento che mi e' 
arrivato tramire IRC...
cd /usr/share/public | find -atime 30 | xargs rm -f
Secondo voi funziona? Domattina lo proverei cmq, ma nel frattempo chiedo a 
voi :)


 mese?
<snip>
man find.
Ps:
ho sempre amato la capacita` di arrivare al punto. Brevemente,
possibilmente. Grazie.
-- 
                         Maurizio - Tannoiser - Lemmo
                 Founder Member of ERLUG 
http://erlug.linux.it
-------------------------------------------------------------------------------
Real programmers can write assembly code in any language.

 voi :)
find /usr/share/public -mtime +30 -exec rm -f \{\} \;
Guarda il manuale di find, perchč non č detto che tutte le opzioni siano 
disponibili per tutti i SO
-atime 30 trova i file che sono stati acceduti *esattamente* 30 giorni 
fa (non 31 e non 29).
per trovare file che sono stati modificati/aggiornati usa -mtime al 
posto di -atime
-- 
Ciao
Morsac

 posto di -atime
Ok. Poi a rm posso aggiungere anche il flag -r per cancellare intere 
directory tutte in un colpo, assumendo che se la dir e' vecchia, 
probabilmente lo e' anche quello che sta al suo interno? :)


 probabilmente lo e' anche quello che sta al suo interno? :)
Meglio di no. Supponiamo di avere la directory "/a/b/c". Se fai
"touch /a/b/c/x" tu cambi il time a "c" ma non a "b". Un comando tipo
"find /a -mtime +30 -exec rm -rf {} \;" cancellerebbe "b" e quindi
ricorsivamente anche "c" ;-) Provare per credere.
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