如何在 Linux 上恢復已刪除的文件
沒有人能避免犯這樣的錯誤:刪除了重要文件,然後發現它沒有備份。儘管垃圾箱可以提供回滾此類操作的方法,但其可行性取決於使用者與作業系統的互動方式。例如,簡單的 CTRL + Delete 按鍵組合可以繞過垃圾箱作為第一個資料恢復等級。無論底層系統是專有的還是免費的解決方案,都有許多工具旨在幫助使用者恢復遺失的檔案。作為世界上最受歡迎的免費運算平台之一,當主題是資料恢復選項時,Linux 也不例外。其中許多是開源解決方案,可以從官方儲存庫下載和安裝。其他工具是準備在任何基於 Linux 的作業系統上運行的商業工具。我們將研究其中兩個解決方案並評估每個解決方案的工作原理:TestDisk 和 R-Linux。
測試磁碟
TestDisk 是一個免費的開源命令列工具,用於在 Linux 上恢復已刪除的檔案。該軟體由 Christophe Grenier 以 C 程式語言編寫,並根據 GNU/GPLv2 許可證獲得許可。它運行在主要作業系統上——Linux 發行版、Windows 和 macOS。安裝包可以透過按鈕下載:
測試磁碟下載考慮到基於Linux的系統,它也可以透過各自的預設套件管理器安裝。在 Debian 和 Ubuntu 上,以下命令在系統上安裝 TestDisk:
$ sudo apt 更新
$ sudo apt install testdisk
如果將安裝額外的軟體包(依賴項)或將刪除必要的軟體包,安裝過程可能會要求確認。否則,TestDisk 將直接安裝在系統上。
要檢查該工具的安裝和其他信息,可以執行以下命令:
$ sudo dpkg -l 測試磁碟
要在 Red Hat Enterprise Linux (RHEL) 和 CentOS 上安裝 TestDisk,首先需要啟用/安裝 EPEL 儲存庫。它是一個附加的套件儲存庫,提供對常用軟體的安裝包的存取。根據 CentOS 版本(7 或 8)的不同,EPEL 儲存庫設定略有不同,如兩組指令所示(所有指令必須以超級使用者權限執行):
- RHEL / CentOS 7
# yum 安裝 epel-release
# 百勝更新
# yum 安裝測試盤
- RHEL/CentOS 8
# 百勝安裝 https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
# 百勝更新
# yum 安裝測試盤
在 RHEL 和 CentOS 的兩個版本上,可以透過執行以下命令來驗證 TestDisk 安裝:
$ rpm -qi 測試盤
最後,可以使用以下指令在其他兩個傳統 Linux 發行版上安裝 TestDisk:
- 軟呢帽:
$ sudo dnf 安裝測試盤
- 拱門Linux:
$ sudo pacman -S testdisk
一旦TestDisk安裝完成,使用者可以透過指令列出系統上的所有分割區和儲存設備
# 測試磁碟/列表
要在Linux上恢復已刪除的文件,只需呼叫不含任何參數的TestDisk工具即可,如下
# 測試磁碟
呼叫 TestDisk 將顯示一個命令列選單,其中包含三個與記錄恢復已刪除檔案的過程的資訊相關的選項。
- 創造: 它會建立一個新的 testdisk.log 檔案。
- 附加: 它將新的日誌記錄資訊新增至現有的 testdisk.log 檔案中。
- 無日誌: 它不會產生任何日誌資訊。
假設選擇了建立新日誌檔案的選項,接下來 TestDisk 將列出可以還原已刪除檔案的磁碟和分割區。透過從清單中選擇一項並選擇「繼續」選項,系統將要求指出要使用的對應分割區類型。使用者按下 ENTER 後,TestDisk 將前進顯示可以對分區執行的操作清單。
「分析」選項評估選定的分割區,它將用於復原 Linux 上的資料。如果此類分區不可啟動,該工具將顯示一則訊息,通知使用者此情況。 TestDisk提供兩種類型的搜尋檔案:「快速搜尋」和「深度搜尋」。選擇其中一個並再次按下“繼續”後,該工具將列出所有可以掃描的分割區。最後一步是觸發搜尋過程。在此步驟中,該工具會更新螢幕,其中包含可用於復原檔案的每個分割區。透過選擇一個分割區,在該分割區上找到的所有已刪除檔案都會被反白顯示,您可以按字母「C」將刪除的檔案複製到特定目錄。
R-Linux
R-Linux 是另一個針對 Windows、macOS 和 Linux(32 位元和 64 位元)作業系統分發的免費實用程式。它還擁有更完整的解決方案 R-Studio,該解決方案是付費的並支援使用 NTFS(新技術檔案系統)分區。與 TestDisk 和其他命令列工具不同,R-Linux 具有友善的圖形使用者介面。可透過以下按鈕下載:
R-Linux 下載安裝並開啟 R-Linux 後,第一個畫面會提示使用者選擇要從中復原已刪除檔案的磁碟或分割區。
下一步涉及透過按下相應的按鈕來觸發掃描過程。 R-Linux 將要求使用者選擇要執行的掃描類型:簡單、詳細或無。最後一個沒有給出刪除文件的搜尋過程的圖形視圖。在同一選項視窗中,也可以選擇執行掃描的特定區域。設定完成後,按下另一個「掃描」按鈕即可開始此程序。接下來,R-Linux 將顯示正在分析的磁碟的一種地圖。此「地圖」可以追蹤掃描過程的進度。可以隨時按下「停止」按鈕中斷此步驟。
掃描過程結束後,存取已刪除檔案的兩個主要選項是:
- 點擊分區並選擇“恢復所有檔案...”
- 選擇「開啟雲端硬碟檔案」選項,然後找出必須從中復原已刪除檔案的資料夾。透過此選項,也可以選擇該工具找到的特定檔案。隨後必須按下「恢復」或「恢復標記」按鈕。
摘要 – 在 Linux 上恢復已刪除的文件
有各種各樣的工具旨在恢復 Linux 上已刪除的檔案。其中許多解決方案僅提供命令列介面,需要 Linux 用戶更加熟練。 TestDisk 就是這種情況。儘管它是一個功能強大的解決方案,但它並沒有隱藏有關驅動程式和分割區的低階詳細資訊。另一類工具的工作原理類似於 R-Linux,它顯示更友善的介面並方便具有任何 Linux 知識水平的使用者與其進行互動。