在 Linux 中如何恢復(fù)已刪除的文件

一、概述
這曾經(jīng)發(fā)生在你身上嗎?你意識(shí)到你錯(cuò)誤地刪除了一個(gè)文件---要么通過Del鍵,要么在命令行中使用rm。
在第一種情況下,您可以使用回站站(GNOME界面),然后將其恢復(fù)到原始位置。但是第二種情況呢?我相信你可能知道,Linux 命令行不會(huì)將刪除的文件發(fā)送到任何地方,而是直接刪除它們。
二、過程
1、 為“rm -i”創(chuàng)建別名
該-i選項(xiàng)與rm一起使用時(shí)在刪除文件之前會(huì)出現(xiàn)提示。此提示讓您有第二次機(jī)會(huì)考慮是否真的要?jiǎng)h除文件 ,但此提示不會(huì)保護(hù)您免受自己的粗心大意刪除文件,它只是給你提供了二次確認(rèn)的機(jī)會(huì)。
要將rm替換為別名'rm -i',請(qǐng)執(zhí)行以下操作:
alias rm='rm -i'
alias命令將確認(rèn)rm現(xiàn)在是別名:
但是,這只會(huì)在當(dāng)前 shell 中的當(dāng)前用戶會(huì)話期間持續(xù)。要使更改永久生效,您必須將其保存到~/.bashrc(某些發(fā)行版可能會(huì)使用~/.profile),
如下所示:
為了使~/.bashrc(or ~/.profile) 中的更改立即生效,請(qǐng)從當(dāng)前 shell 獲取文件:
2、 恢復(fù)工具 – Foremost
在日常的系統(tǒng)操作,請(qǐng)小心的你文件,但是,如果您意識(shí)到您不小心刪除了系統(tǒng)中的文件并且驚慌失措,別擔(dān)心,此工具會(huì)輕松幫你找回誤刪除的文件!
2.1 安裝軟件包
CentOS/RHEL 7,是目前在生產(chǎn)環(huán)境見到的使用最廣泛的版本,下面展示在CentOS/RHEL 7中的安裝過程。
#rpm -Uvh https://rpmfind.net/linux/dag/redhat/el7/en/x86_64/dag/RPMS/foremost-1.5.7-1.el7.rf.x86_64.rpm
命令展示:
[root@192_168_209_128 images]# foremost -h foremost version 1.5.7 by Jesse Kornblum, Kris Kendall, and Nick Mikus. $ foremost [-v|-V|-h|-T|-Q|-q|-a|-w-d] [-t <type>] [-s <blocks>] [-k <size>] [-b <size>] [-c <file>] [-o <dir>] [-i <file] -V - display copyright information and exit -t - specify file type. (-t jpeg,pdf ...) -d - turn on indirect block detection (for UNIX file-systems) -i - specify input file (default is stdin) -a - Write all headers, perform no error detection (corrupted files) -w - Only write the audit file, do not write any detected files to the disk -o - set output directory (defaults to output) -c - set configuration file to use (defaults to foremost.conf) -q - enables quick mode. Search are performed on 512 byte boundaries. -Q - enables quiet mode. Suppress output messages. -v - verbose mode. Logs all messages to screen
選項(xiàng)釋義:
- -t:指定要恢復(fù)的文件類型如jpeg,pdf,exe,doc等,如果要恢復(fù)所有文件類似,指定參數(shù)值為"all"即可。
- -d:打開間接塊檢測(cè)(對(duì)于 UNIX 文件系統(tǒng))。
- -i:指定輸入文件(默認(rèn)為標(biāo)準(zhǔn)輸入)。
- -a:不執(zhí)行錯(cuò)誤檢測(cè)(損壞的文件)。
- -w:只輸出審計(jì)文件,不輸出被刪除的文件至磁盤上。
- -o:設(shè)置輸出目錄(默認(rèn)為輸出)。
2.2 示例展示
(1) 安裝完成后,讓我們進(jìn)行一個(gè)簡單的測(cè)試。
首先我們將xihu.jpg從/boot/images目錄中刪除:
[root@192_168_209_128 images]# cd image [root@192_168_209_128 images]# pwd /boot/images [root@192_168_209_128 images]# ls xihu.jpg [root@192_168_209_128 images]# rm xihu.jpg
(2) 執(zhí)行恢復(fù)。
要恢復(fù)它,首先按如下方式使用(您需要首先識(shí)別底層分區(qū) -在這種情況下/dev/sda1就是/boot所在的分區(qū)):
remost -t jpg -i /dev/sda1 -o /home/rescure/
(3) 查看恢復(fù)情況。
查看一下審計(jì)文件。
從輸出內(nèi)容來看,文件被成功恢復(fù)。
注意事項(xiàng):
- 其中/home/rescue是單獨(dú)磁盤上的目錄 - 請(qǐng)記住,在已刪除文件所在的同一驅(qū)動(dòng)器上恢復(fù)文件不是明智之舉。
- 如果在恢復(fù)過程中,您占用已刪除文件所在的相同磁盤扇區(qū),則可能無法恢復(fù)任何內(nèi)容。此外,必須在執(zhí)行恢復(fù)之前停止所有活動(dòng)。
- 在 foremost 完成執(zhí)行后,恢復(fù)的文件(如果可以恢復(fù))將在/home/rescue/jpg目錄中找到。
三、小結(jié)
在本文中,我們解釋了如何避免意外刪除文件以及在發(fā)生此類意外事件時(shí)如何嘗試恢復(fù)文件。但是請(qǐng)注意,根據(jù)分區(qū)的大小,最終可能需要運(yùn)行很長時(shí)間。
到此這篇關(guān)于在 Linux 中如何恢復(fù)已刪除的文件的文章就介紹到這了,更多相關(guān) Linux 恢復(fù)已刪除文件內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持腳本之家!
相關(guān)文章
linux怎么避免刪除錯(cuò)誤的文件和恢復(fù)文件?
linux怎么避免刪除錯(cuò)誤的文件和恢復(fù)文件?linux系統(tǒng)經(jīng)常誤刪文件,該怎么防止這種事情呢?下面我們就來看看如何避免刪除錯(cuò)誤的文件和恢復(fù)文件,需要的朋友可以參考下2016-12-15- 這篇文章主要介紹了在Linux中恢復(fù)被刪除的文件的教程,文中包括介紹了永久擦除硬盤中的數(shù)據(jù)的方法,需要的朋友可以參考下2015-06-09
- 需要對(duì)日志文件的內(nèi)容進(jìn)行清理,但有時(shí)因?yàn)榇中亩鴮⑷罩疚募o刪除了,刪除的日志文件syslog是可以恢復(fù)的,下面是誤刪日志文件的恢復(fù)方法,感興趣的朋友可以看看2015-04-21
linux rm誤刪除數(shù)據(jù)庫文件的恢復(fù)方法
在linux redhat 5.4版本,rm誤刪除數(shù)據(jù)庫文件的恢復(fù)過程如下,網(wǎng)上找的,測(cè)試過OK2013-07-22恢復(fù)linux下被刪除的syslog—/var/log/messages文件方法
如果/var/log/messages文件被誤刪除了,那么應(yīng)該如何恢復(fù)呢?請(qǐng)看本文2013-02-07Linux中誤刪除數(shù)據(jù)文件和歸檔日志的恢復(fù)方法
Linux誤刪除數(shù)據(jù)文件和歸檔日志的恢復(fù)方法,需要的朋友可以參考下2013-01-22- 今天有客戶的數(shù)據(jù)庫意外被刪除了整個(gè)目錄中的數(shù)據(jù)文件,操作系統(tǒng)級(jí)別的刪除,然而幸運(yùn)的是這個(gè)數(shù)據(jù)庫沒有崩潰,仍然處于open狀態(tài)的時(shí)候,客戶就發(fā)現(xiàn)了問題,求助到我們,最2013-01-22