沒有後悔藥?探究固態硬碟的數據恢復問題

2020-12-19 快科技

沒有後悔藥?探究固態硬碟的數據恢復問題

2010-03-11 09:43:00  

   作者:Rob Williams 編輯:紫竹[

爆料

]

收藏文章
[1.導讀:TRIM指令的由來及負面影響]

譯者註:固態硬碟(SSD)憑藉超高速的讀寫速度在高端玩家中頗受歡迎,但是SSD硬碟也暴露出一些不成熟的表現,之前已有過固件門、性能下降等例子。Techgage網站最新的測試顯示SSD硬碟在數據恢復方面遇到了新的挑戰,這一問題在支持TRIM指令的固態硬碟上尤為嚴重。有鑑於此,編輯將這篇文章編譯過來希望能引起玩家的重視。目前這一問題還沒有別的評測加以佐證,筆者手頭也沒有固態硬碟可重複驗證,希望正在使用固態硬碟的玩家在評論中多多探討,並注意備份自己的重要數據。

你是否已將你的PC升級到了新一代配置(比如多核CPU、SSD固態硬碟),並為新電腦的高性能而沾沾自喜?的確,現在的PC機性能越來越強大,但是一個不小心,這個價值$2000美元的野獸也可能讓你一聲嘆息。如果你和筆者一樣喜歡在進入桌面之後加載一大堆應用程式,那麼你就需要小心了。

問題源於SSD固態硬碟,這個2.5寸的NAND硬碟可以大幅提升電腦性能,啟動速度更是飛快,用過SSD硬碟的用戶與普通機械硬碟一對比就會發覺兩者之間巨大的差別。不過本文的重點不是SSD硬碟的性能,而是關注固態硬碟可能帶來的問題,尤其是Win7系統中引入的TRIM指令可能會對數據恢復造成負面影響。這個問題目前尚有爭議,但是依然值得我們去關注和探討。

固態硬碟以前也出過問題,還記得Intel的磚頭門嗎?起初人們認為這還只是Intel一家的SSD硬碟的風險,但是後來的事實證明市面上的多款SSD硬碟都有著相同的固有問題。

幾乎絕大多數存儲設備在刪除文件時都有如下類似的步驟:一旦用戶刪除文件,指向數據在硬碟上的具體位置的索引就會被刪除(對於機械硬碟來說就是LBA邏輯塊尋址)。舉例來說,如果為了管理方便你把自己收藏的電影存放位置寫在一張紙上,某天你不慎把這張紙燒掉了,實際上你只損失了一張紙,實際的電影還在。通常我們的數據存儲就是這樣,刪除文件時只是刪除了文件的索引,具體的文件還存在硬碟上

也正因為實際數據仍然保存在硬碟上,數據恢復才有了操作的可能,當然前提是用戶沒有在原位置覆蓋新的數據。一旦用戶誤刪除了重要文件,使用數據恢復軟體都有很高几率成功恢復文件,這種事對機械硬碟來說並不鮮見。隨著SSD硬碟的興起,恢復數據的方法雖然沒有改變,但是固態硬碟獨特的使用方法使得數據恢復面臨新的挑戰


Kingston's SSDNow M Series - 1G & Non-TRIM (左), 2G & TRIM (右)

機械硬碟可以隨時覆寫數據而不會影響硬碟的讀寫性能,即使使用幾年後其讀寫速度也不會有較大變化。與之相比,固態硬碟由於NAND快閃記憶體不同的工作原理導致使用一段時間後就會遇到性能下降問題。

我們可以用磁碟碎片產生的過程來解釋這個問題,系統向磁碟的某個區塊寫入了一堆數據,在不需要的時候用戶就會刪除這些數據並在同位置保存別的文件,而作業系統是以固定大小的區塊來保存文件的(windows系統默認格式化的時候是以4KB為一個數據單元),新保存的文件不一定能恰好填滿原來佔用的區塊,假定一張圖片的大小是6KB,需要佔用一個4KB區塊和另一個區塊的2KB,而剩下的的2KB空間可能被另外的word文檔佔用,如果用戶刪除了圖像文件,但是word文檔不受影響,依然要佔據剩下的4KB,因此就會產生磁碟碎片。

隨著使用時間的增長,磁碟碎片就會越來越多,進而導致磁碟性能下降,所以我們需要定期整理磁碟碎片,將碎片佔用的空間整合轉移,但是對於固態硬碟來說磁碟碎片整理並沒有解決全部問題。

一旦需要在原位置寫入新的數據,傳統的機械硬碟執行新數據寫入只需要覆蓋寫入即可,而SSD硬碟必須要先清除原有的數據才能將新數據寫入硬碟,這也是SSD硬碟性能更受歡迎的一個原因,而執行清除―寫入的過程也正是TRIM指令最主要的作用所在。

微軟在Win7系統引入了新的基於ATA命令的TRIM指令,一旦有刪除文件、格式化或者忽略文件之類的磁碟讀寫,系統就會向SSD硬碟發出命令清空區塊中數據。這個過程很簡單,但是很有實用價值。無論用戶是刪除文件還是格式化SSD硬碟,TRIM指令都會清空數據及索引,某種意義上來說這時的SSD硬碟相當於全新狀態,不再有性能下降的問題。

TRIM指令的作用也正是本文的由來,多數人都忽略了TRIM指令的負面影響。用戶在享受TRIM帶來的好處時也不知不覺中使得數據恢復的可能性降至0。如前文提到的,在機械硬碟和不支持TRIM指令上的固態硬碟上進行數據恢復沒有什麼問題,只有原位置沒有寫入新的數據,用戶只需要選擇合適的軟體基本上就能恢復誤刪文件。

數據恢復在支持TRIM的SSD上就會成為一個難題,一旦你刪除了某個文件(隨後又清空了回收站),你的數據可能永遠也無法恢復了。因為TRIM指令的存在,用戶刪除數據後SSD硬碟就會徹底清空那個區塊,而不是像傳統的機械硬碟那樣只刪除索引而保留數據

筆者無法確認TRIM指令是否會導致機械硬碟上的數據也不可恢復,如果必須有個結論的話那麼普通消費者也無法進行這樣的數據恢復,當然如果有適當的工具,數據恢復也並非不可能。某種意義上我們可以把NAND快閃記憶體看做電腦的內存(RAM),內存一旦斷電其中的數據就會消失無蹤(某些情況下可以啟動恢復很可能是使用特殊手段保證內存不斷電)。

[2.測試之前的準備]

我們用大幅內容討論了TRIM以及數據恢復的背景知識,那麼我們如何證明受TRIM影響的SSD無法恢復數據?即便我很自信這是個事實,但是我們仍要找到實際的測試方法將這個設想付諸實踐,實踐才檢驗真理的唯一標準。

第一頁上配的圖中是兩款金士頓M系列80GB的SSD硬碟,1G和2G,他們其實都是基於Intel的方案,因此第一代1G不支持TRIM,而2G那款支持TRIM指令。

測試之前,我們HDDErase對1G硬碟進行一次徹底擦除(這個過程可以當成TRIM指令操作,他們的效果是一樣的,只是HDDErase擦除的是整個硬碟),2G那款只是正常安裝使用。測試使用了64位Win7旗艦版,因為64位的系統中TRIM是默認開啟的。

經歷以上步驟後,兩款硬碟可以看作都處於出廠狀態,使用系統自帶的磁碟管理程序將兩塊硬碟格式化為NTFS格式使用。

 


之後筆者使用自己的文件分別複製到兩塊硬碟中,保證兩塊硬碟中的文件是同樣內容同樣的大小。最終每個硬碟的字節數都為79,873,675,264 byte,大小74.3GB,剩餘空間只有3MB,總計40,002個文件和670各文件夾。之所以拷入這麼多文件主要是保證文件類型的多樣性,保證每種文件都有恢復的可能性。

測試之前還要檢查一下Win7系統中TRIM指令是否真正有效,用戶可以在命令行中輸入如下指令:

fsutil behavior query disabledeletenotify

如果返回的結果為0,那就意味著TRIM指令可用,如果返回結果是1則說明TRIM不可用,即便硬碟支持TRIM也沒有用。需要注意的是,Windows表示TRIM可用與否並不代表它的實際工作狀態,還有別的因素影響這個指令的工作,用戶必須檢測系統以確保TRIM指令可以正常工作。

準備工作完成之後我們就開始實際的測試,這一步沒有什麼特別的,就是ctrl+a全選文件然後確定刪除,那麼文件到底能否恢復?下一頁將會揭曉。

[3.實戰數據恢復]

第一次的測試選擇是的R-Studio數據恢復軟體,結果如下:

 
左: Non-TRIM - 右: TRIM-Enabled

剛一看到支持TRIM指令的硬碟上也是大片粉紅色(意味著有文檔可恢復)筆者也很受打擊,以為自己的推論是錯誤的,不過仔細檢驗之後結果又很明確:不支持TRIM指令的硬碟找到了288,407個可恢復文件,支持TRIM指令的硬碟只找到了488個可恢復文件。這是否意味著TRIM固態硬碟也可以恢復數據?還不一定。

雖然TRIM硬碟也找到了一些文件,但是全都被破壞了,這依然沒有改變TRIM使得數據恢復不可能的結論,圖中粉紅色區塊表示的可恢復文件塊可能是文件系統的緣故,雖然這一點還不能確認,不過TRIM指令確實讓那些寄希望恢復誤刪文件的用戶備受打擊。

為了進一步證明我們的結論,我逐個檢查恢復報告發現兩塊硬碟上的文件實際上依然存在,非TRIM硬碟上只要不覆蓋就可以恢復所有文件(建議用戶忽略軟體提示的X號,大部分數據只要不被覆蓋都是可以恢復的)。同時還要注意的是,TRIM硬碟只找到了根目錄下的Games和Pictures兩個文件夾,原本則有七個文件夾。

 
左: Non-TRIM - 右: TRIM-Enabled

筆者找到的可恢復文件是我最喜歡的網遊《亞瑟王的召喚》內測時的截圖,有11年的歷史了,因此對個人來說相當有紀念意義。如果用戶重要的文件誤刪除並且無法恢復,想想看這會多麼令人沮喪。在TRIM硬碟上恢復數據不是問題,但在TRIM硬碟上即便提示數據可恢復,最終的結果也不一定很樂觀。

 
左: Non-TRIM - 右: TRIM-Enabled

筆者多次嘗試將數據恢復,甚至是把容量最小的txt文檔也恢復了,在非TRIM硬碟上恢復的文件沒有問題,而在TRIM硬碟上恢復出來的文件卻遇到了奇怪的問題,即便恢復的數據與源文件大小一模一樣,但是數據完全不對,內容甚至為0。例如恢復的txt文檔即便是大小與原文檔一樣,在用note程序打開時裡面的內容也是空的。(原文作者說打開的txt文檔涉及個人隱私,因此沒有上圖―編者注。)

為了進一步驗證,筆者又使用了Ontrack and O&O's的數據恢復軟體再次掃描硬碟,結果如下:


左: Non-TRIM - 右: TRIM-Enabled

 
左: Non-TRIM - 右: TRIM-Enabled

從上面的截圖中可以看出,TRIM硬碟在數據恢復方面再次悲劇,沒有找到實際可用的索引文件。它們在TRIM硬碟上找到的只是一些雜碎文件,即便是這些文件恢復之後也找不到擁有的數據。因此我們最終認定:在支持TRIM硬碟上恢復數據基本不可能。

[4.總結]

從整個測試中可以看到,在TRIM固態硬碟上恢復數據基本是做無用功,一旦TRIM發出了清除數據的命令,用戶只能和誤刪文件吻別了。耐人尋味的是,(使用TRIM指令清空數據後)會留下一些特殊的數據,筆者也沒有弄明白具體是怎麼回事,它可能是與NTFS文件系統有關的數據,就好像Windows系統格式化硬碟後會留下一些索引文件一樣。測試得到的結果很明確:排除這些索引文件後,TRIM硬碟上的已刪數據永遠消失了

本篇測試看起來可能很很簡單,而且也不是很詳盡,我去年12月中旬才著手這個項目的,花了很長時間才寫成這篇文章。這段時間我多次測試了非TRIM硬碟和TRIM固態硬碟,因此我對自己的發現非常自信。有意思的是,最近測試的SSD可以找到一些可恢復文件,而以前測試的硬碟刪除操作後一點文件也找不到。因此這個問題看起來有隨機性,但是最終的結論還是很明確的:(TRIM硬碟)一旦刪除數據就再也找不回來了。

在我測試的過程中,我給許多廠商都發郵件溝通過這個問題,不過並沒有收到任何有價值的回應。這些公司包括數據恢復廠商、SSD製造商甚至包括主導制定ATA標準的T13公司。

我詢問的廠商中有幾家SSD銷售商和數據恢復軟體商,SSD銷售商以及他們的工程師都不能回答我們的問題,數據恢復廠商則兩次掛斷我們的電話,似乎沒有廠商願意我們深究數據恢復和TRIM背後的故事,因此我們得到的結論都是基於我們自己的發現。

雖然本文的主要內容是提醒人們注意TRIM指令的負面影響,不過我們並不會一棍子將TRIM打死,畢竟TRIM指令是使SSD硬碟保持最佳性能的關鍵之一。TRIM可能有一點缺點,不過它仍然是保證SSD正常使用的必要技術。

在此我們提醒使用TRIM硬碟的用戶要注意備份重要數據,在非TRIM存儲設備上用戶還有機會恢復誤刪除文件,但在TRIM硬碟上並沒有這麼幸運,丟失的數據不可能找回來,雖然還不能確認專業恢復廠商能否找回數據,但是TRIM硬碟就像我們的內存,一旦數據被清除就再也找不回來了。

我們之所以多次強調備份數據的重要性,是因為很多人都和筆者一樣經歷過誤刪文件帶來的教訓。目前固態硬碟還沒有普及,本文測試發現的問題也只是影響一小部分人群,但是用戶依然有必要備份自己的重要數據,一旦出現以外可能後悔都來不及。

閱讀更多:默認

相關閱讀:

金士頓A2000 M.2 NVMe固態硬碟開啟電腦高

4款熱門旗艦NVMe SSD橫評:差距有多大?

SLC SSD果然才是王者!如此折磨5年都不死

4D 128層全球之最!快閃記憶體巨頭髮飆SSD

狼真的來了!SSD跌了兩年一天就漲回去了

崛起!國產主控+國產快閃記憶體SSD深度評測

相關焦點

  • 受損固態硬碟數據恢復方法(福利:固態硬碟免費恢復數據)
    固態硬碟數據免費恢復自今日起如果您有固態硬碟數據恢復需求,就請將您的硬碟砸過來吧!免費恢復數據恢復服務全程免費,並根據您的硬碟具體情況給出相應的數據恢復方案。今天源妹要給大家分享一些受損固態硬碟數據恢復方法。廢話不多說了,直接上乾貨。固態硬碟(SSD)因其輕、薄、快、低耗電、耐震、穩定性高、耐低溫等優點得到了快速的應用,在存儲設備市場中佔有很大份額並在持續增長。但是,眾所周知,固態硬碟一旦損壞,數據就比較難以恢復,這也增加了針對固態硬碟的電子數據取證工作難度。
  • 固態硬碟數據的恢復方法有哪些?恢復一氣呵成
    眾所周知,目前市面上的硬碟大致分為兩種:固態硬碟和移動硬碟。這其中固態硬碟對於電腦運行速度的提升是最大的,所以很多小夥伴都會選擇它。但是隨著使用年限的增加,電腦硬碟上存儲的臨時數據就變得非常多了,所以我們需要適時地進行清理。
  • 固態硬碟不識別數據恢復成功
    顧女士的固態硬碟突然不識別,拿到達思做數據恢復。固態硬碟是由每個存儲晶片按RAID0方式組合起來,由主控晶片控制。硬體不識別的情況下,恢復難度比普通機械硬碟開盤難度要大很多。 該硬碟是GEIL的120G固態硬碟,主控晶片型號是SM2246XT。
  • 威剛SP600固態硬碟SSD損壞數據可以恢復嗎?分享數據恢復成功案例
    恢復介質:威剛SP600型256G固態硬碟博維數據恢復案例故障描述:客戶為北京某研究所,單位辦公電腦使用的是威剛品牌固態硬碟,是IT當時為了提升速度統一後加裝的,現在固態硬碟發生故障突然不能識別BIOS裡面也不顯示型號,表現為開機無法進入系統桌面
  • 迷你固態硬碟無法拷貝數據數據恢復
    客戶許先生的筆記本電腦突然有一天開機進系統異常緩慢,讀取數據時直接死機,於是拿著筆記本電腦來到達思尋求幫助。   工程師判斷是固態硬碟有壞塊造成數據無法讀取,開機緩慢,於是拆下筆記本中的硬碟做鏡像。   筆記本中是一塊迷你固態硬碟。
  • 固態硬碟的分類和優缺點
    相關測試表明,攜帶固體硬碟的電腦和使用機械硬碟的電腦,在相同的硬體和軟體環境中,兩個電腦的速度開始,打開一半以上的大型軟體。這是因為沒有頭,沒有電機旋轉速度,解決的過程時間與數據存儲位置無關,因此,磁碟碎片不會影響訪問時間等多因素聯合的結果。
  • 固態硬碟開啟Trim後,刪除數據究竟能不能恢復?
    固態硬碟其實是快閃記憶體存儲硬碟系列的一個俗稱(SSD),近些年快閃記憶體存儲發展迅速,一些企業級的固態硬碟容量能夠達到10T以上容量,在速度和存儲密度上的優勢逐漸蓋過傳統的機械硬碟。 那麼固態硬碟刪除數據後能不能恢復呢?
  • SSD(固態硬碟)雖好,數據丟失卻無法恢復!這裡面有什麼道道?
    憑藉超高速的讀寫速度,再加上價格大幅下降,固態硬碟非常受用戶的喜愛,但是固態硬碟數據能恢復嗎?相信這是很多用戶的疑問,畢竟隨時都有可能發生各種意外而導致數據丟失,今天和大家討論下固態硬碟數據恢復問題。固態硬碟用過固態硬碟(SSD)的用戶就會知道,固態硬碟與普通機械硬碟一對比就會發覺兩者之間巨大的差別,不過今天的重點不是它的性能,而是關注固態硬碟數據恢復問題,某網站的測試顯示SSD
  • 固態硬碟的好處有哪些?數據丟失後如何恢復?
    固態硬碟是目前使用人數較多的一種電腦硬碟存儲設備,主要用於電腦硬碟數據的存儲相對較多。在電腦裝配時,相信很多人也都會首選固態硬碟的電腦因為固態硬碟這種設備在使用過程中具有很大的優勢,有哪些優勢呢?它們我們所常見的機械硬碟相比,二者之間的區別有哪些呢?
  • 固態硬碟丟失的文件如何恢復?恢復其實很簡單
    固態硬碟丟失的文件如何恢復?隨著科技的不斷發展,電腦已經發展成為我們日常生活和辦公中不可或缺的設備。對於電腦來說,最主要的當然是硬碟了!因為文件大都被存儲在其中。而很多的用戶為了文件讀取的速度,都會選擇使用固態硬碟。那麼,在使用固態硬碟的時候,如果遇到文件丟失的文件該如何恢復呢?
  • 世上沒有後悔藥?先看看這幾款固態硬碟(全文)_三星 750 EVO SATA...
    固態硬碟市場的紅火,也導致各大硬體廠商紛紛研製相關產品,造成固態硬碟市場品牌魚龍混雜,難以抉擇。    今天,筆者就為大家推薦幾款,買了不後悔的優秀固態硬碟產品。
  • 固態硬碟開始掉速,老司機帶你恢復固態性能
    很多玩家開始為自己的整機增添一些新的裝備,在這些裝備中,就有固態硬碟。固態硬碟經過很長時間使用之後,如果開始出現掉速,我們應該採取什麼方式恢復固態硬碟的性能呢?現在有一種謬論是:「固態硬碟並不需要整理。」其實這種說法是錯誤的,固態硬碟也跟機械硬碟一樣,除了要進行日常的維護之外,還需要通過一系列方式進行提速,下面我們看看有哪些重要的方式。
  • 臺電固態硬碟SD128GBS550固件損壞數據恢復成功
    這個月初,徐先生帶著臺電固態硬碟SD128GBS550SN:3648T174300918來到達思數據恢復中心,徐先生說硬碟出問題了,具體什麼問題也不清楚,請達思數據恢復工程師看看怎麼解決。  達思數據恢復工程師將硬碟掛在硬碟檢測設備上進行檢測,判斷硬碟故障為固件損壞。經客戶同意,開始進行下一步數據恢復操作。
  • 為什麼移動固態硬碟很少見?數據存儲的安全性是關鍵
    眾所周知,SSD固態硬碟無論是讀寫速度還是性能都要好過機械硬碟,被廣泛地應用在了臺式機和筆記本電腦中。但不知道大家有沒有發現一個有趣的現象,無論市面上還是日常辦公都非常少見移動固態硬碟的身影?這就使得移動固態硬碟的數據傳輸率總是被限制在了HDD的速度瓶頸之下。再加上想要發揮出移動固態硬碟的最大速率還必須要使用USB3.0等功能,從而導致了實際速率並沒有廠家所宣傳的那麼高。
  • 舊硬碟轉讓前記得清空硬碟數據,防止個人數據被恢復
    去年Q4季開始,隨著全球快閃記憶體產能的擴大,快閃記憶體的價格終於開始崩盤,固態硬碟的價格開始逐漸下滑。在今年7月底,快閃記憶體的價格已經跌去了一半,國內固態硬碟的價格也經歷了大幅度的下跌。截止目前,雖然國內市場上海外品牌的固態硬碟價格仍然居高,但是國產固態硬碟基本都已經下降到了1元1G的價格。
  • 為什麼朋友推薦買固態硬碟的筆記本呢?機械硬碟和固態硬碟的區別
    而蘋果手機裡也有一個叫「硬碟」的東西,其實我們應該稱之為「固態硬碟」,固態硬碟的英文名為Solid State Disk,簡稱SDD,是由控制單元和存儲單元組成,簡單的說就是用固態電子存儲晶片陣列而製成的硬碟,這裡小編需要介紹的是,「固態一篇」為啥叫「固態」,這是因為以前都是用的機械硬碟,機械硬碟裡是有馬達的,馬達帶動磁頭高速旋轉來讀取信息,而固態硬碟沒有馬達
  • 固態硬碟的格式化
    現在使用固態硬碟的人很多,但是了解固態硬碟如何使用的人很少,也會有很多錯誤的操作造成硬碟的損壞或者數據的丟失。其中常見的的就是硬碟格式化的問題。第一次使用的使用要進行4K對齊,保證固態硬碟存儲顆粒的性能。建議分區的時候分成2個分區,避免系統出現問題進而影響數據丟失。
  • 電腦硬碟恢復教程,簡單復原硬碟丟失數據的做法!
    電腦硬碟恢復教程?大家應該都聽過數據恢復的案例,例如一些文件數據被損壞,使用技術手段給修復回來等。電腦的數據恢復也是如此,也是一種技術手段,硬碟數據恢復大家可能都會接觸到,因此我們就來看看硬碟數據恢復教程。
  • 從數據恢復角度出發,雙十一硬碟應該如何選購
    >一、為什麼數據可以恢復簡單來說,當我們在電腦進行[刪除]操作的時候,硬碟並沒有真正刪除數據本身,因此只要數據存儲位置不被覆蓋我們就有找回數據的可能性。由此可見我們真實刪除的數據只是目錄部分,數據的本體實際並沒有被操作,如果在我們刪除A數據後,A數據實際的保存位置沒有被新的數據覆蓋,那麼通過特殊的軟體就可以恢復A數據。因此,誤刪除數據恢復的關鍵點就是:原數據位置沒有被新數據覆蓋(誤刪後,一定不要再往硬碟內寫入數據)。由此推論要想徹底刪除數據,我們需要對原數據位置反覆擦寫覆蓋。
  • SSD固態硬碟不認盤,能修復嗎,數據怎麼恢復出來呢
    SSD固態硬碟不認盤,能修復嗎,數據怎麼恢復出來呢 2020-12-02 10:09