Lista pecet@man.lodz.pl
[Lista archiwów] [Inne Listy]

Re: [PECET] Do Olafa -- Secure Erase SSD

To: pecet@man.lodz.pl
Subject: Re: [PECET] Do Olafa -- Secure Erase SSD
From: Olaf Frikiov Skiorvensen <Belzebub@invalid.invalid>
Date: Thu, 22 Apr 2021 10:34:34 +0200
Wcale nie przypadkiem, dnia Thu, 22 Apr 2021 03:03:28 +0200 
 doszła do mnie wiadomość  <s5qi17$k1h$1@gioia.aioe.org> 
 od "Eneuel Leszek Ciszewski" <prosze@czytac.fontem.lucida.console>  :
>Można po rozum iść do swej głowy? -- ale
>czy Można po rozum iść do diabła?...
>
>"Olaf Frikiov Skiorvensen" <Belzebub@invalid.invalid> 
>6sj08gpmflit02vgl8ehtfef66dtbqjmjh@4ax.com
>
>> Wcale nie przypadkiem, dnia Wed, 21 Apr 2021 17:08:38 +0200
>
>Zdecydowanie celowo! Celem jest pielęgnacja dysku.
>
>>>Mam Evo970 Samsunga i pytania:
>>> - czym zrobić Secure Erase?
>>>  - soft Samsunga proponuje wstawienie penflaszki
>>>    do USB i restart, którego raczej ;) chcę
>>>    uniknąć z pewnego/konkretnego powodu
>
>> Czym się da, softem producenta czy z Linuksa live za pomocą hdparm.
>
>Widzę, że bez restartu raczej nie obejdę się.

Program od producenta dysku nie chce tego zrobić bez restartu? To chyba Samsung 
Magician
o ile dobrze pakiętam. Bijesz jakiś rekord Uptime systemu?

>>>  - czy są inne softy, które to uczynią równie
>>>    dobrze lub lepiej, ale bez restartu?
>
>> Powinno się obyć bez restartu w każdym przypadku,
>
>Jak uruchomić Linuks bez restartu?

No nie da się, ale może coś z maszyną wirtualną zguzdrawęźić.
Jeśli komputer obsługuje Vt-d, to powinno dać radę.
Musisz to mieć bez restartu?

>> czasami trzeba kasowany dysk wypiąć i za kilka
>> sekund ponownie wpiąć do zasilania ze względu
>
>Tu chyba też potrzebny jest restart, choć być
>może dałoby się inaczej...
>
>> na status "frozen" który może mieć taki dysk,
>> alternatywa to chwilowe uśpienie systemu.
>
>Uśpienie czy hibernacja?

Uśpienie lub wypięcie dysku z zasilania i podpięcie ponowne.

>>> - co naprawdę czyni Secure Erase?
>>>   (oczywiście nie zależy mi na danych)
>
>> Secure erase(i enchanced secure erase) bezwarunkowo i natychmiast
>> kasuje wszystkie bloki danych na dysku(tzw erase blocks) oraz
>
>Dlaczego to jest ważne dla późniejszej pracy dysku?
>Jak się to ma do wydajności?
>
>> niektóre obszary będące poza zasięgiem usera,
>
>Tyle wiem, że sięga głębiej niż 'del' itp., ale znowu -- dlaczego
>to jest ważne dla późniejszej pracy dysku? Poza zasięgiem usera
>nie jest, skoro user może zlecić Secure erase.

User nie ma dostępu do tablic metadanych dysku, pSLC cache czy sektorów OP oraz
przykładowo, do tablic translatora, secure erase skasuje o wszystko.

>> czyli wymusza kasowanie całego dysku, dodatkowo w trybie
>> enchanced secure erase dysk(dotyczy tylko mechanicznych,
>> o ile pamiętam) wypełnia się specjalnym wzorem bitowym.
>
>Czyli Secure erase nie zapisze komórek?
>Nie zdegraduje ich jeszcze mocniej? Nie
>przyczyni się do wyczerpania limitu TBW?

Secure Erase skasuje wszystkie bloki natychmiast, nawet bloki już wcześniej 
skasowane i
aktualne całkowicie puste skasuje ponownie, więc do cykli kasowania dojdzie dla 
każdego
bloku jeden cykl, kasowanie bloku to zapis FF w całym bloku plus podniesienie 
napięcia
zasilania bloku więc tak, degraduje, ale i tak kasowanie bloków musi wystąpić 
przed
zapisem do danego bloku, więc taka degradacja występuje podczas normalnej pracy 
dysku.

>>> - dlaczego
>>>     skasowanie wszystkich partycji i trim
>>>   nie da efektów równie dobrych?
>
>> Można TRIM bez kasowania partycji, robi się to komendą(tylko
>> Linux) blkdiscard lub hdparm z odpowiednimi opcjami(plus
>> skrypt, bo za jednym zamachem nie można strimować całego
>> dysku, więc trzeba porcjami).
>
>> Sęk w tym, że TRIM nic nie kasuje, a informuje tylko dysk,
>> aby oznaczył trimowane strony(odpowiednik sektora) jako "dirty",
>> czyli przeznaczone do recyclingu, dopiero po jakimś czasie
>> procedury garbage collectora robią resztę roboty.
>
>Jak się to ma do oszczędzenia dysku? Kiedyś pisałeś, że
>Secure erase jakoś oszczędza dysk przed niepotrzebnym
>(nadmiarowym) nadpisywaniem -- tak przynajmniej to
>zrozumiałem.

Trim owszem, ma dobry wpływ na żywotność dysku, secure erase też może mieć(jak 
się
pracuje na dysku bez TRIM czy jak system operacyjny w czasie startu/zamykania 
wyłącza
TRIM i zostawia śmieci, windows tak ma), secure erase to się stosuje na 
przykład przy
oddaniu dysku w inne ręce, aby gość nie mógł sobie odzyskać jakichś danych, 
dodatkowo,
secure erase kasuje wszystko(obszar OP i pSLC cache, normalnie nie masz 
kontroli nad tymi
obszarami).

>> Secure erase i hdparm:
>> https://grok.lsu.edu/article.aspx?articleid=16716
>
>> Hdparm i trim_sector_range:
>> https://itectec.com/superuser/restoring-performance-and-estimating-life-of-a-used-ssd-drive/
>
>> Blkdiscard:
>> https://www.imacat.idv.tw/cgi-bin/man/man2html?blkdiscard+8
>
>Skoro bez restartu nie obejdzie się, mogę to wykonać softem
>Samsunga, bo restart nie jest nadmiarowo bolesny czy kosztowny.
>
>-=-
>
>Myślałem, że 'Secure erase' to jakieś zlecenie dyskowi
>podobne do 'Trim', które można wydać spod czegokolwiek
>podczas normalnej pracy dysku.

Tak powinno być, przynajmniej teoretycznie nie ma przeciwwskazań(poza 
przypadkiem, kiedy
chcesz to zrobić z dyskiem systemowym).
Pod Windows zawsze było to problematyczne.

>-=-
>
>Partycjoner Aomei potrafi przeprowadzić Secure erase, ale
>pod Win7. Czym Win7 góruje nad Win10? Nazwane jest to po
>polsku (Bezpieczne wymazanie SSD) więc nie wiem, czy to
>dokładnie to.
>
>-=-
>
>Moim celem jest uniknięcie ewentualnych problemów związanych
>z ponownym partycjonowaniem dysku -- nie zależy mi na
>zniszczeniu dowodów zbrodni ;) itp...
>
>-=-
>
>Dlaczego jest to nazwane 'Secure erase'?
>Co w tym kasowaniu jest securowatego?
>
>-=-
>
>Dzięki za odpowiedź, ale gdybyś mógł jeszcze
>nieco mocniej rozjaśnić temat, byłoby fajniej...

Reasumując, secure erase kasuje wszystkie dane usera z dysku plus tablice 
translacji,
pSLC cache czy obszar OP.
TRIM tylko oznacza strony(sektory) jako "dirty"(nie rusza metadanych, OP i 
cache), do
recyclingu, a resztą zajmuje się garbage collector(bloki nie są kasowane 
natychmiast, ale
co pewien czas, w dodatku GC może defragmentować bloki, przepisująć ważne dane 
do innych
bloków, to rodzaj defragmentacji, przykładowo, jakieś statyczne dane(rzadko 
modyfikowane)
mogą zostać przepisane w inne miejsce w celu wyrównania ilości cykli P/E, bo 
niektóre
bloki mogą mieć na karku setki cykli P/E, a niektóre dziesiątki).

Pamięć flash w dysku SSD podzielona jest na bloki o wielkości 
megabajtów(przykładowo 8
MiB), bloki podzielone są na strony o wielkości 4-8 KiB, skasować można tylko 
cały
blok(do tego konieczne jest z reguły podniesienie napięcia zasilania bloku i 
jego
wypełnienie wzorem FF), natomiast zapisać danymi można pojedynczą stronę, każdy 
blok ma
licznik cykli P/E jakie przeszedł od początkudziałania dysku.

Za pomocą hdparm i blkdiscard zrobisz z dyskiem wszystko, pod Win już 
niekoniecznie, pod
tym względem Win to mientka kupa.

GC - garbage collector.
P/E - cykle program/erase.
OP - overprovisioning, nadmiarowe bloki pamięci flash.
-- 
Gdyby się wysadziło ich planety, zburzyło miasta,
spaliło księgi, a ich samych wytłukło do nogi,
może udałoby się ocalić naukę miłości bliźniego. SL.

<Pop. w Wątku] Aktualny Wątek [Nast. w Wątku>