Svuotate quell’accidente di cestino!

Waste binQualche giorno fa ho migrato un mail server con storage maildir e client in IMAP di un cliente su una nuova macchina virtuale.

Nonostante siano configurati relativamente pochi utenti, /var/spool/mail è di 30 Gb. Non è un problema, su Linux la limitazione è solamente lo spazio disco e, come per i file server, parto sempre dal presupposto che se una persona conserva un messaggio di posta elettronica ha motivo di farlo.

Analogamente ai file server, ogni tanto eseguo delle analisi statistiche sui mail server per vedere come è utilizzato lo spazio.

Uno scriptino stupido come questo permette di vedere quanto occupano i cestini in una struttura maildir in cui ogni dominio è una directory con dentro le varie mailbox (/var/spool/mail/example.com/user/var/spool/mail/acme.com/user, eccetera):

#!/bin/bash
for D in $(find /var/spool/mail/ -mindepth 2 -maxdepth 2 -type d) ; do
   du -sh $D/.Trash* ;
done

Quando ho eseguito questo script sullo storage del cliente di cui sopra mi sono accorto che circa 1/3 delle mail era nei cestini.

Non mi stupisco che ci sia della gente che (ab)usa il cestino come archiviazione, ho visto per la prima volta questi comportamenti nel 1990 quando lavoravo presso un centro Apple. Purtroppo molte persone considerano il cestino una sorta di limbo, un posto dove mettere le cose “che non sono da tenere, ma nemmeno da cancellare”. Altri semplicemente non si curano del problema e pensano che, come il cestino della scrivania, qualcuno passi a svuotarlo.

Se riesco, quando installo i client mail attivo l’opzione “Svuota posta eliminata all’uscita”, spesso il trucco funziona e l’utente dà per scontato che quella funzione sia integrata nel sistema. Alcune volte il client è installato da altri o l’utente non vuole che venga attivato.

Il problema di cestini troppo pieni o, più in generale, dell’occupazione di storage aziendale con dati inutili è duplice. Da un lato c’è l’ovvio problema dell’occupazione del disco dati con file inutili; dall’altro c’è il problema più grave dell’occupazione del backup.

Considerati i metodi attuali di backup, la dimensione dei documenti inutili viene moltiplicata per tutte le istanze del backup e allunga i tempi delle operazioni di salvataggio: se vengono cancellati 10 Gb da un server, lo spazio risparmiato sullo storage di backup, a meno di sistemi di deduplica, sarà il 10 Gb moltiplicato il numero di copie diverse che vengono salvate.

Autore: Luigi Rosa

Consulente IT, sviluppatore, SysAdmin, cazzaro, e, ovviamente, geek.

4 pensieri riguardo “Svuotate quell’accidente di cestino!”

  1. Io nei miei mail server metto un bello script in cron che rasa i cestini ogni tot tempo (tipicamente la domenica). Sarebbe pero` carino farne uno migliore che cancelli le mail piu` vecchie di tot da dentro ai cestini. Cosi` potrebbero avere la loro funzione di “oddio, quello mi serviva, non dovevo cancellarlo” ma solo per N giorni.

        1. Non e’ difficile.
          I test li fai con doveadm search, tipo:

          doveadm search -A mailbox Trash savedbefore 15d

          se funziona al posto di search metti expunge e lui secca i messaggi. Per pochi utenti puoi cronnare questo comando al posto di usare il plugin

Spazio per un commento