
我用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
安裝遠端資料夾並備份到該資料夾(改編自的說明這裡)。
安裝
sshfs
在伺服器上yum install fuse sshfs
你可能必須啟用 EPEL 儲存庫如果尚未啟用。
加載保險絲模組(在伺服器上)
modprobe fuse
選擇一個目錄從您的家用計算機並將其掛載到 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 清空它,也可以在需要時手動清空它,或開始空間不足。