Linux中國

如何在 Linux 中恢復一個刪除了的文件

刪除創建為 rm -i 的別名

-i 選項配合 rm 命令(也包括其他文件處理命令比如 cp 或者 mv)使用時,在刪除文件前會出現一個提示。

這同樣也可以運用到當複製,移動或重命名一個文件,當所在位置已經存在一個和目標文件同名的文件時。

這個提示會給你第二次機會來考慮是否真的要刪除該文件 - 如果你在這個提示上選擇確定,那麼文件就被刪除了。這種情況下,很抱歉,這個技巧並不能防止你的粗心大意。

為了 rm -i 別名替代 rm ,這樣做:

alias rm='rm -i'

運行 alias 命令可以確定 rm 現在已經被別名了:

增加 rm 別名的命令

為 rm 增加別名

然而,這隻能在當前用戶的當前 shell 上有效。為了永久改變,你必須像下面展示的這樣把它保存到 ~/.bashrc 中(一些版本的 Linux 系統可能是 ~/.profile)。

在 Linux 中永久增添別名

在 Linux 中永久增添別名

為了讓 ~/.bashrc(或 ~/.profile)中所做的改變立即生效,從當前 shell 中運行文件:

. ~/.bashrc

在 Linux 中激活別名

在 Linux 中激活別名

取證工具-Foremost

但願你對於你的文件足夠小心,當你要從外部磁碟或 USB 設備中恢復丟失的文件時,你只需使用這個工具即可。

然而,當你意識到你意外的刪除了系統中的一個文件並感到恐慌時-不用擔心。讓我們來看一看 foremost,一個用來處理這種狀況的取證工具。

要在 CentOS/RHEL 7 中安裝 Foremost,需要首先啟用 Repoforge:

# rpm -Uvh http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el7.rf.x86_64.rpm
# yum install foremost

然而在 Debian 及其衍生系統中,需這樣做:

# aptitude install foremost

安裝完成後,我們做一個簡單的測試吧。首先刪除 /boot/images 目錄下一個名為 nosdos.jpg 的圖像文件:

# cd images
# rm nosdos.jpg

恢復這個文件,如下所示使用 foremost(要先確認所在分區 - 本例中, /boot 位於 /dev/sda1 分區中)。

# foremost -t jpg -i /dev/sda1 -o /home/gacanepa/rescued

其中,/home/gacanepa/rescued 是另外一個磁碟中的目錄 - 請記住,把文件恢復到被刪除文件所在的磁碟中不是一個明智的做法。

如果在恢復過程中,佔用了被刪除文件之前所在的磁碟分區,就可能無法恢復文件。另外,進行文件恢復操作前不要做任何其他操作。

foremost 執行完成以後,恢復的文件(如果可以恢復)將能夠在目錄 ·/home/gacanepa/rescue/jpg` 中找到。

總結

在這篇文章中,我們闡述了如何避免意外刪除一個不該刪除的文件,以及萬一這類事情發生,如何恢復文件。還要警告一下, foremost 可能運行很長時間,時間長短取決於分區的大小。

如果您有什麼問題或想法,和往常一樣,不要猶豫,告訴我們。可以給我們留言。

via: http://www.tecmint.com/recover-deleted-file-in-linux/

作者:Gabriel Cánepa 譯者:ucasFL 校對:jasminepeng

本文由 LCTT 原創編譯,Linux中國 榮譽推出


本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive

對這篇文章感覺如何?

太棒了
0
不錯
0
愛死了
0
不太好
0
感覺很糟
0
雨落清風。心向陽

    You may also like

    Leave a reply

    您的郵箱地址不會被公開。 必填項已用 * 標註

    此站點使用Akismet來減少垃圾評論。了解我們如何處理您的評論數據

    More in:Linux中國