修復 SSD 時的 dd 與安全擦除

修復 SSD 時的 dd 與安全擦除

將零寫入整個 SSD(dd if=/dev/zero of/dev/sdX)是否能提供與「安全擦除」相同的效能恢復效果,或者安全擦除還可以執行其他操作嗎?

==編輯== 稍微澄清一下;我不關心安全地銷毀數據,我只想使用該驅動器(已對其進行大量填充/刪除)並恢復隨著時間的推移而發生的 SSD 性能損失。

答案1

如果我沒記錯的話,我不確定你這樣做可以安全地擦除它。從作業系統取得指令的控制器電子設備內部執行例程,以正確均勻地磨損 SSD 單元;它們的寫入/讀取週期有限,如果您不斷地重複寫入它們,它們就會“死亡”,因此內部系統會分發寫入指令以防止驅動器出現問題。最好的選擇是完全寫入數據,然後擦除檔案並重新執行。然後,您會縮短其在該過程中的壽命,即使這樣,在該過程中也可能存在未被覆蓋的空間,因為我相信可能會為其他數據保存一些多餘的空間和/或為發現的壞單元保存備份空間。

如果您有消除舊儲存媒體上資料的安全要求,您可能不想使用 SSD,或者您可能想考慮更老式的東西,例如霰彈槍或金屬粉碎機。

如果想要恢復效能,需要驅動支援TRIM;大多數製造商都推出了適用於自己的驅動器的實用程序,可以刷新驅動器。隨著時間的推移,作業系統逐漸內建了 TRIM 支援。

幾年後,您可能不需要做任何事情來維護驅動器。這很像對驅動器進行碎片整理。 OS X 已經對小於 20 兆的檔案進行碎片整理。大多數 Linux 檔案系統都非常擅長減少碎片。 NTFS 似乎仍然有問題,但我認為隨著檔案內檔案的概念在 Windows 中變得更加流行(想想 ISO 映像和 VM 磁碟機),它會在某個時候減少。

因此,回答這個問題...將驅動器歸零不會像 TRIM 支援和製造商實用程式那樣恢復效能。

答案2

儘管安全性擦除在功能上是單遍進程,但它在許多方面與將單遍覆蓋寫入為外部執行進程不同。讓我們考慮以下情況,SE 作為由裝置駐留控制器控制的內部進程啟動。事實上,它作為內部流程啟動,使 SE 能夠從特權設備控制中受益。這些包括在有利的環境中正確執行時處理主機保護區(通常為作業系統映像保留的系統分區)和系統檔案、G 清單的能力,以及消除設備控制覆蓋(表定義了主機的虛擬設備幾何結構) 。本質上,SE 能夠處理媒體表面的所有可寫入資料儲存區域,這是任何外部控制進程在 ATA 設備上的任何情況下都無法實現的功能(由於控制器媒體區域存取限制),這也包括 SSD 設備作為磁存儲設備。

如果您對《數位資料銷毀最佳實踐》的詳細指南感興趣,我很樂意提供由我和加州大學聖地亞哥分校磁記錄研究中心的戈登·休斯撰寫的免費個人使用指南副本,僅供您參考。請前往http://www.cicadasecurity.com.guide.html訪問指南申請表。

喔...差點忘了...恢復SSD 安全擦除上磨損均衡造成的效能損失就是答案。整個驅動器的外部執行覆蓋將作為常規寫入周期進行處理,並將受到磨損均衡的影響。搜尋標題為「SSD Anthology:Understanding SSDs and New Drives from OCZ」的論文2738,了解他對SSD 效能的精彩討論。

答案3

不,似乎不是:根據這裡,安全性擦除也會重置磁碟機並將所有區塊標記為可用。現在,歸零可以而且顯然不會將區塊標記為可用,因為它填充了數據,儘管是零。

該連結還重新連結到一些工具。

答案4

如果您有任何安全問題,我只會將驅動器完全清除一次,因為據我所知,每個閃存單元只能保持一種狀態,如果您將其清零,則可以確定最後一個狀態。然後我會使用安全擦除工具來回收效能。

不應對驅動器壽命造成明顯影響,因為每個單元在每個步驟中只能使用一次,並且您有數千個寫入週期。

(我寫了另一個答案,因為我想將問題的答案和進一步的建議分開,以便於閱讀。)

相關內容