Domanda: Ho da poco assemblato un sistema per gestire la videosorveglianza di casa ponendomi come obiettivi silenziosità , basso consumo ed elevata affidabilità . Per questi motivi ho scelto un case LC-1370Wmi dove ho inserito una scheda madre AsRock Q1900DC-ITX, 4 Gbyte di Ram Ddr-3 e un’unità Ssd Kingston V300 da 120 Gbyte. La connettività wireless è implementata mediante un mini-adattatore Wi-Fi da 150 Mbps collegato alla porta Usb. Il tutto opera senza mouse e tastiera e, per le eventuali operazioni di manutenzione, mi collego con TeamViewer da un altro Pc sulla rete locale. Il costo totale di questo equipaggiamento è di poco superiore ai 200 euro. Come sistema operativo ho adottato Ubuntu/Linux 14.10 e Zoneminder 1.28 che funzionano perfettamente anche se le specifiche della scheda madre e dell’unità Ssd non facevano alcun riferimento ai sistemi Linux, limitandosi a dichiarare la piena compatibilità con Windows in tutte le sue declinazioni. Sono ormai tre mesi che il computer di cui sopra funziona ininterrottamente. Mi sono però posto il problema della vita operativa dell’Ssd e, anche dopo una ricerca, non sono riuscito a trovare una risposta definitiva. La funzionalità Trim è un argomento molto dibattuto e un po’ ostico, in particolare ho trovato elenchi di unità Ssd compatibili con questa tecnologia e anche molti documenti che ne trattano l’utilizzo in abbinamento a Linux, ma niente che mi fornisca informazioni adeguate alla mia configurazione. Alcuni dubbi sono riuscito a dissiparli leggendo con attenzione l’articolo sugli Ssd pubblicato sul numero 284 di PC Professionale ma mi mancano ancora informazioni relative all’utilizzo di queste memorie di massa con i sistemi operativi Linux, soprattutto per quanto riguarda la disponibilità dei software diagnostici. Infatti non sono ancora riuscito a trovare delle utility di monitoraggio che abbiano funzionalità analoghe a quelle dei sistemi Mac e Windows. Spero che mi possiate fornire queste informazioni ad integrazione del vostro già ottimo articolo.
Risposta: Linux è stato uno dei primi sistemi operativi ad implementare le funzionalità avanzate per la manutenzione delle unità Ssd. Però, nonostante il supporto sia presente, in molte distribuzioni il Trim viene lasciato disabilitato. I motivi che stanno alla base di questa scelta sono legati alla ricerca delle massime prestazioni e al fatto che l’errata implementazione di questa funzionalità in alcune delle prime unità Ssd poteva portare al danneggiamento dei dati. Inoltre Windows e Os X nella maggior parte dei casi adottano i loro file system nativi e quindi Microsoft ed Apple hanno potuto ottimizzare la loro implementazione del Trim per questi formati di archiviazione.
L’implementazione del Trim in ambiente Linux, invece, è resa più complicata dal fatto che questo sistema operativo utilizza un grande numero di file system diversi. Per questi motivi, la sua implementazione di base in ambiente Linux non è efficiente quanto quella di Windows. In particolare la tecnologia Trim consente di inviare all’unità Ssd una lista di blocchi che devono essere rimessi a disposizione. Linux non utilizza questa possibilità e si limita ad inviare le richieste di pulizia una alla volta, con un sensibile calo delle prestazioni nelle ordinarie operazioni di lettura/scrittura dei dati. È quindi possibile attivare la funzionalità Trim in Linux, ma ciò avrebbe la conseguenza di diminuire l’efficienza delle memorie di massa allo stato solido invece di aumentarla. Per aggirare questo problema gli sviluppatori hanno deciso di intraprendere una strada diversa, ovvero trasformare la funzione Trim da marcatura eseguita in tempo reale ad operazione di manutenzione.
Con l’approccio utilizzato da Windows, ogni volta che l’utente cancella un file i suoi blocchi vengono immediatamente ripuliti mediante un comando Trim. Per Linux, invece, è stata creata l’utility fstrim che effettua una scansione di tutto il contenuto del file system e provvede a rilasciare i blocchi non più utilizzati. Questa operazione può essere eseguita ad intervalli regolari, giornalmente per i sistemi in cui si fa un utilizzo più pesante delle memorie di massa, oppure una volta alla settimana per la configurazione tipica. Di solito il lancio della manutenzione Trim viene eseguita sotto forma di “Cron Job” e può essere impostata in uno specifico intervallo orario (ad esempio, la notte) secondo le necessità dell’utente. Se invece si desidera eseguire in maniera interattiva la funzione Trim è possibile digitare il comando
sudo fstrim -v
(in quanto l’utility fstrim richiede i privilegi di root per accedere all’unità Ssd a livello della struttura a blocchi). Nel caso specifico del lettore, la configurazione predefinita di Ubuntu/Linux 14.10 prevede già la manutenzione settimanale. Bisogna però tenere in considerazione che, come forma di estrema cautela, la funzionalità Trim in ambiente Linux è attivata di default solo per le unità Ssd prodotte da Intel, Samsung, OCZ, Patriot e SanDisk. Questa scelta è dovuta a ragioni storiche in quanto alcune tra le prime unità Ssd ad essere introdotte sul mercato avevano mostrato incompatibilità di varia natura con Linux. Allora, per garantire l’integrità dei dati, si è scelto di attivarla in maniera automatica solo sulle memorie di massa che sono state sottoposte a test approfonditi. Nelle unità Ssd di ultima generazione il firmware del controller della memoria flash è ormai consolidato e le probabilità che si presentino anomalie è molto ridotta.
Riteniamo quindi che, anche se l’unità Ssd di cui è equipaggiato il computer non rientra tra quelle sopra elencate, si potrà attivare manualmente la funzionalità Trim senza che si presentino inconvenienti di alcun tipo. Per tenere sotto controllo la vita operativa delle unità Ssd in ambiente Linux si potrà utilizzare il package smartmontools, il quale contiene le due utility smartctl e smartd che consentono di accedere alla diagnostica S.M.A.R.T (Self-Monitoring, Analysis and Reporting Technology) implementata all’interno di tutti i dispositivi Ata, Serial Ata e Scsi. Molte distribuzioni di Linux contengono già di serie questo package, in caso contrario si potrà scaricare il materiale necessario all’installazione dall’indirizzo www.smartmontools.org.