如何恢復剛剛使用“rm -R”命令刪除的目錄(在雲端驅動器中)?

如何恢復剛剛使用“rm -R”命令刪除的目錄(在雲端驅動器中)?

我用rm -R指令刪除了一個重要的目錄。這是一個非常受歡迎的主機資料。它/var/zpanel/hostdata/ayrintilih 位於刪除 ayrintilih 目錄後,所有內容都消失了。

我嘗試用ext4magic​​程式取消刪除。但它需要另一個硬碟磁碟區來恢復。

錯誤訊息:

ERROR: can not use "/root/recoveried" for recover directory. It's the same filesystem : "/dev/dm-0"

我的 ISP 剛剛回覆了我的請求:

Unfortunately there is no way to add another Volume to a virtual Instance. 
If it would be a dedicated Server, we could do it, but not in a Cloudserver. 
You could try to minimize the partition and create another one, that would 
count as another Volume. We also recommend to have allways a 
Backup for your Important files.

答案1

取消刪除越來越成為一個神話,尤其是。使用現代硬體(SSD),任何被刪除的內容也會立即清除(TRIM),因此找回任何內容的機會為零。

你最好的選擇是對你現在擁有的任何東西製作一個圖像,然後使用你想要的任何工具看看是否還有任何東西可以找到。就像是:

ssh -C remoteserver dd if=/dev/theserverdisk bs=1M > local/disk.img

最好將盒子放入救援系統中,或以其他方式凍結整個盒子(只讀)以執行此操作,因為此時任何和所有寫入只會造成進一步的損壞。

影像完成後,您可以為其建立一個唯讀循環設備:

losetup --find --show --partscan --read-only disk.img

然後繼續在循環設備上使用您選擇的任何救援工具。

答案2

如果您可以存取另一台 Linux/Unix/OSX 等機器,它可能可以使用sshfs安裝遠端資料夾並備份到該資料夾(改編自的說明這裡)。

  1. 安裝sshfs 在伺服器上

    yum install fuse sshfs
    

    你可能必須啟用 EPEL 儲存庫如果尚未啟用。

  2. 加載保險絲模組(在伺服器上

    modprobe fuse
    
  3. 選擇一個目錄從您的家用計算機並將其掛載到 CentOS 伺服器上

    redleon@local$ mkdir /remote_backup
    

    現在,在遠端伺服器,運行這個

    mkdir /backup
    sshfs [email protected]:/remote_backup /backup
    

    您需要更改1.2.3.4為您的實際IP本地機器

完成後,您將在本地安裝一個遠端檔案系統,您可以嘗試運行ext4magic並告訴它備份到/backup.我不能保證它會起作用,但似乎值得嘗試。

答案3

你可以嘗試使用tmpfs記憶體磁碟為了恢復。當然,這要求您有足夠的可用記憶體來容納要恢復的資料量。

但總的來說,我認為弗羅斯特舒茨的回答一語中的——“取消刪除”很少起作用。讓這成為您的一個教訓並做好備份。

答案4

你們中的許多人在這裡貶低了受害者,而不是回答問題。受害者已確定該系統是基於雲端的。與其假設他在沒有備份的情況下刪除了,為什麼不假設有備份,而他需要從備份中恢復目錄?如果你必須取消刪除,你(貶低者)就會這麼做,不是嗎?

如果您的系統託管在提供 ISP 的系統上,他們會定期進行備份。您需要向他們提出正確的問題,以便他們理解並正確回應,但您應該能夠從他們的備份中還原或還原目錄。某些資料可能會遺失,具體取決於上次備份的時間。

這裡的答案取決於系統的備份方式和頻率。 Cron 和 Tar 通常由小型系統使用,由於其簡單性,許多大型系統也使用它。不過,還有其他可用的工具。

如果這不是一個單人系統,則可能存在 IT 部門和備份方法。 IT 部門可以幫助您,您應該去找他們,而不是嘗試自己恢復資料夾/目錄。

如果這是一個家庭系統,而您是 IT 部門,並且備份嚴格在本地,則可以使用 CRON 和 TAR 進行備份。檢查您的 CRON 設定以查看您放置 TAR 檔案的位置。查看 tar 檔案以獲取確切的路徑和名稱:

 tar -tvf <backup name>.tar

解壓縮它。

 tar -xvf <backup name>.tar <directory name>

執行 man tar 獲取更多信息,或者當然,再用 google 獲取 tar 和備份信息。

未來的考慮因素包括其他備份選項,以及垃圾桶類型刪除而不是真正的刪除。垃圾箱類型刪除涉及為 rm 建立一個別名,將項目移至名為「trash」的目錄,而不是真正刪除。然後,您可以使用 Cron 清空它,也可以在需要時手動清空它,或開始空間不足。

相關內容