Cestino di rete

Una delle cose in cui Samba e` superiore a Windows e` la possibilita` di usare un cestino sugli share di rete. Il cestino, ovvero il modulo recycle, puo` essere abilitato su uno share con questa configurazione minima:

vfs objects = recycle
recycle:versions = Yes
recycle:touch = Yes
recycle:maxsize = 100000000
recycle:directory_mode = 0770

Questa configurazione consente di creare una directory ".recycle" nella root dello share, e di metterci dentro i files cancellati non piu` grandi di 10 mega (quelli piu` grandi vengono cancellati davvero) tenendone infinite copie nel caso in cui vengano cancellati piu` volte files con lo stesso nome. Dal momento che per esempio Office (e non solo) quando salva un file lo cancella e ricrea, di fatto questo consente di tenere tutte le copie del documento (una per ogni salvataggio). La directory ".recycle" viene creata con il modo specificato, i files invece appartengono all'utente che li ha cancellati. L' access time dei files viene settato al momento della cancellazione. Se si vuole settare il modify time, usare "recycle:touch_mtime" anziche` "recycle:touch".

Il cestino si riempie all'infinito, nulla cancella i files. Per questo e` opportuno usare uno script per tenerlo pulito. Ovviamente siccome questo script cancella mucchi di files, e` bene che venga collaudato bene prima di usarlo in produzione (in cron).

Questo e` lo script che uso al momento, per cancellare i files dopo 30 giorni dal loro inserimento nel cestino. Questo script usa l'access time e non il modify time, ma e` chiaro che non ci vuole molto (mtime anziche` atime) per usare il modify time, se si preferisce (ovviamente la configurazione del modulo recycle va fatta di conseguenza)

# questo cancella il recycle dentro oguna delle home directory.
find /home/*/.recycle/ -atime +30 -type f -exec rm  "{}" ";"

# questo cancella il recycle da dentro tutte le subdir di /ud0 (dove ci sono gli share condivisi)
find /ud0/*/.recycle/ -atime +30 -type f -exec rm  "{}" ";"

Samba/RecycleBin (last edited 2009-04-12 17:33:25 by localhost)