Funkcja TRIM - odzyskiwanie danych z dysków SSD

Zadania realizowane dzięki funkcji Trim związane są z kwestiami wydajności dysku SSD. Funkcja ta może mieć jednak negatywny wpływ na skuteczność ewentualnego procesu odzyskiwania danych w przypadku omyłkowego usunięcia plików z przestrzeni nośnika.

Do czego służy Trim

Jej działanie wynika bezpośrednio ze sposobu przechowywania danych przez dyski SSD. Pliki przechowywane są tutaj w komórkach pamięci półprzewodnikowej, których architektura opiera się na odpowiednich blokach podzielonych na przypisane im strony. Operacja nadpisania usuniętych danych nie odbywa się tak jak w przypadku dysków HDD. Dysk twardy usuwając plik, w rzeczywistość nie kasuje go fizycznie, a jedynie usuwa dane o jego lokalizacji, zwalniając niejako miejsce do zapisu nowych informacji Ponieważ pliki nie są fizycznie usuwane, możliwe jest ich odzyskanie zanim w ich miejsce zostaną zapisane (nadpisane) nowe pliki. Dopiero podczas zapisu nowych danych, poprzednie pliki ulegają skasowaniu.

W przypadku dysków SSD zapis może być przeprowadzony jedynie dla pustej strony, zaś cała operacja wykonywana jest w całości dla każdego pojedynczego bloku. Aby można było dokonać zapisu w przestrzeni pustego bloku, strony które nie są przeznaczone do usunięcia muszą zostać przepisane. Operacja zapisu związana jest zatem z koniecznością sprawdzenia dostępności przestrzeni komórek pamięci, usunięcia z nich danych, które zostały przeznaczone do wykasowania, aktualizacji i zapisu nowych danych. Cały proces komunikacji (odwoływania do różnych obszarów pamięci) może się wydłużać, powodując spadek wydajności urządzenia. Aby temu zapobiec wprowadzona została właśnie funkcja Trim.

Sposób działania funkcji Trim

Aby dysk SSD dokonał operacji zapisu, musi wiedzieć czy strona jest czysta. W przypadku zapisanej strony komenda zapisu zmienia się w czasochłonną procedurę odczytu, kasowania, modyfikowania i zapisu. Działanie funkcji Trim polega na wygenerowaniu stosownej informacji o zwolnieniu miejsca podczas komendy usunięcia danych. System operacyjny współpracując z dyskiem SSD, podczas usuwania danych, przesyła do kontrolera informację, które strony są już puste. Podczas wystąpienia konieczności wykonania czynność zapisu, czyste strony będą już przygotowane do przeprowadzenia efektywnej operacji. Nie istnieje już zatem konieczność przeszukiwania przestrzeni dysku podczas procesu zapisu nowych informacji i wysyłania komend z zapytaniem o dostępność danego fragmentu przestrzeni. Proces odczytu bloku pamięci, wymazanie i zapisanie powtórne odbywa się już przy usuwaniu informacji. Wystarczy zatem komenda usunięcia danych, aby każdy nowy plik, nadpisywał poprzednią zawartość, co w zasadzie uniemożliwia odzyskanie danych np. w przypadku ich omyłkowego usunięcia.

Jak postępować w przypadku omyłkowego usunięcia pliku z dysku SSD 

To bardzo trudna sytuacja w kontekście ewentualnego odzysku. Najważniejsze jest uniemożliwienie nadpisania skasowanych informacji, dlatego należy natychmiast wyłączyć urządzenie wraz z odłączeniem źródła zasilania w przypadku stwierdzenia nieobecności stosownego pliku (opróżniony kosz). Nie należy pod żadnym pozorem ponownie uruchamiać laptopa bądź dysku (w przypadku jednostki zewnętrznej) i należy zgłosić się z problemem do specjalistycznego laboratorium odzyskującego dane. Należy jednak liczyć się z bezpowrotną utratą zapisanych informacji.

Zabezpieczenia przed omyłkowym skasowaniem danych z dysku SSD

Funkcję Trim można jednak wyłączyć. Działania takie przeprowadza się z poziomu systemu operacyjnego. W tym celu należy w administratorze Windows wpisać komendę: fsutil behavior set disabledeletenotify 1. Należy jednak mieć świadomość, iż działanie dysku może być wówczas nieefektywne, a proces jego zużycia przyspieszony. Niemniej jednak można znaleźć tego rodzaju zalecenia dla wszystkich roztargnionych czy działających “zbyt szybko”. Najprostszym działanie zabezpieczającym przy włączonej funkcji Trim jest jednak po prostu rozwaga oraz posiadanie kopii zapasowej na alternatywnym nośniku.

Pavel Kroupka

Galeria