Rm

如何安全地從 USB 快閃記憶體驅動器中恢復已刪除的數據?

  • January 9, 2020

這個事件實際上發生在幾年前,但我仍然擁有未更改的 USB 快閃記憶體驅動器。我可能不走運,但我想我會在這裡向所有聰明的人請教你的建議。

短篇故事:

幾年前,我的妻子想將她 iPhone 上的所有照片儲存到 USB 快閃記憶體驅動器上,因為她的儲存空間已用完。我們從商店買了一個全新的 USB 快閃記憶體驅動器,所以我認為它有一個FAT32文件系統。我們將快閃記憶體驅動器插入 aMac OS X並能夠備份她的所有照片。備份完成後,我們意識到幾乎每張照片都有一個重複文件。photo.jpg有一個名為photo\ 1.jpg. 所有重複的文件都以\ 1.jpg後綴結尾。

剛啟動 UNIX,我知道我可以使用 shell 的簡單正則表達式來刪除所有重複的文件,但我最終沒有將我的命令放在引號中……我最終執行了以下命令:rm * 1.jpg. 如您所見,我告訴系統刪除每個文件,然後刪除1.jpg. 而不是告訴系統刪除每個以1.jpg. 發生這種情況後,我和憤怒的妻子(當時的女朋友)在我旁邊,我拔掉了快閃記憶體驅動器並將其存放在抽屜裡。

問題:

rm是否有任何安全的 UNIX 工具可以從 USB 快閃記憶體驅動器中恢復使用 刪除的數據?還是我運氣不好?如上所述,自事件發生以來,我沒有碰過快閃記憶體驅動器。

如果這個問題過於寬泛,請隨意將其移至元數據或最適合的地方。

rm是否有任何安全的 UNIX 工具可以從 USB 快閃記憶體驅動器中恢復使用 刪除的數據?

是的,順便說一句,照片的恢復是最常見的情況之一。

您描述的條件實際上是最佳的,因為:

  • 你直接刪除了文件
  • 文件系統沒有損壞
  • 你不再使用驅動器了

這些條件導致兩個可用選項。

如果您關心文件名(或有碎片文件)

當您在驅動器上順序寫入大量圖片時,碎片的風險實際上非常低,但仍然如此。要恢復文件和文件名,您需要一個支持文件系統的工具。

輸入測試磁碟

sudo testdisk /dev/sdb

它將通過 TUI(文本使用者界面)向您展示一步一步的過程。基本步驟是:

  • 掃描驅動器
  • 選擇分區
  • 按下P以顯示文件
  • 複製已刪除的(紅色)文件C

如果你真的只是想要照片回來

對於圖片,您可能不關心名稱。此外,文件系統可能已損壞(不是您的情況),TestDisk 也無濟於事。

PhotoRec(來自同一個開發者)來拯救:

sudo photorec /dev/sdb

在這裡你只需要指定輸出目錄。您還可以禁用對某些您不關心的文件類型的檢測。

引用自:https://unix.stackexchange.com/questions/288059