RIprendo questo post, mi trovo finalmente nella necessità di dover accedere a tutti quei dati, quindi sono spronato a realizzare qualcosa di utile.
fatto un punto della situazione, e letto i vostri interventi mi sono convinto di realizzare la seguente struttura: 1) Deamon di scansione: -) sempre attivo, attivato al boot in caso di shutdown o crash) -) file di configurazione con specifiche di include/esclude dir -) deve naturalmente escludere il proprio DB in modo automatico. -) deve accorgersi di modifiche al filesystem, se un file scansionato è stato modificato, lo deve scansionare nuovamente. -) dopo la prima scansione totale, rimane praticamente in attesa solo delle modifiche al filesystem. -) alternativa: eseguire una scansione periodica una volta ogni tot tempo (più veloce, non ricalcola tutti gli md5) -) registra in un DB postgreSQL i dati reperiti: -) Nome e path del file (varie funzioni di python os e sys) -) creation time -) modification time -) tipologia di file (esecuzione del comando unix "file" o il corrispettivo, se esiste, python). -) link alla tabella di incrocio dei duplicati. 2) django per l'interfaccia utente: -) utilizzare il server interno a django -) non è necessario che sia un deamon, viene lanciato dall'utente in shell (ssh sul server) e poi ci si connette con il browser -) possibilità di navigare nelle copie e di visualizzarne il contenuto (mime?) suddividendole con query apposite. -) marcatura dei file per la cancellazione 3) deamon di cancellazione: -) interrogazione periodica del DB per trovare i file segnati come da cancellare -) eseguire la cancellazione effettiva dei file marcati. -) cancellazione automatica delle directory svuotate. forse il secondo deamon (cancellazione) è superfluo, potrebbe essere fato in tempo reale da django, ma la cosa potrebbe anche comportare uno stop dell'interfaccia fino al completamento della cancellazione... invece l'uso del deamon renderebbe anche la cancellazione un fattore di background. pericoli? possibilità di cancellare per errore file che non si vogliono cancellare? (direi che nel caso di duplicati, si imponga che almeno una copia rimanga e non possa essere selezionata per la cancellazione, mentre se non ci sono duplicati, il file non si può selezionare per la cancellazione). ora, il punto di partenza: i due deamon, devono essere due programmi a parte, o fare parte del progetto django? (se ho capito bene come si generano i deamon, si tratta solamente di un fork di un programma, con la successiva chiusura del processo padre, il che lascia il processo figlio in eredità a init, fino alla sua conclusione, è sufficiente che questa non avvenga mai, giusto?) Marco Beri, dove trovo il tuo libro su django in formato elettronico/epub (attualmente sono completamente a digiuno di django)? Byez -- Gollum1 Tesssssoro, dov'é il mio tessssoro... _______________________________________________ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python