欢迎访问昆山宝鼎软件有限公司网站! 设为首页 | 网站地图 | XML | RSS订阅 | 宝鼎邮箱 | 后台管理


新闻资讯

MENU

软件开发知识
原文出处: lujun9972

foremost是一款按照文件头,尾和内部布局来实验从镜像文件(可能磁盘)中规复文件的东西。

foremost默承认以扫描出 jpggifpngbmpaviexempgmp4wavriffwmvmovpdfoledocziprarhtmlcpp 文件。

可是通过设置它的设置文件(默认为 /etc/foremost.conf),你还可觉得它增加新的支持范例。

安装foremost

sudo pacman -S foremost

利用foremost扫描文件

最常用的要领就是

sudo foremost -t 文件范例 -i 磁盘/镜像文件

好比,昆山软件公司,我误删除了一个 png 文件,那么可以运行

sudo formost -t png -i /dev/sda1

这会扫描 /dev/sda1 分区,昆山软件开发,实验查找个中的 png 文件,并将这些 png 文件生存到当前目次下的 output 目次中。

你也可以通过 -o 选项来指定存放文件的目次,劳务派遣管理系统,但要留意,这个目次需要是空的,不然会提示错误。

sudo formost -t png -i /dev/sda1 -o /tmp/png

为了利便,你也可以利用 T 选项让foremost自动按照当前时间戳来生成output目次,这时生成的目次是雷同这样的 output_Thu_Mar__8_11_43_40_2018

sudo formost -t png -i /dev/sda1 -T

foremost 需要扫描整个磁盘或镜像文件来查找大概的文件,这经常是一个很漫长的进程,可以利用 -q 来加速扫描速度。

当启用 -q 选项后, foremost 会仅仅在每个扇区的开始位置与文件头举办比拟,这会极大地淘汰扫描时间,但大概会丢失一些嵌套在其他文件内的文件(好比嵌套在doc文件中的图片)。

sudo formost -q -t png -i /dev/sda1 -T

与 -q 常连用的是 -b number, 它可以指定磁盘每个扇区的巨细,默认是512个字节。但对付 ext4 文件系统来说,这个值一般是4096.

sudo formost -q -b 4096 -t png -i /dev/sda1 -T

详细文件系统的扇区巨细是几多,可以通过 dumpe2fs 来查察

sudo  dumpe2fs /dev/sda1 |grep "Block size" |cut -f2 -d ":"

我们可以写一个剧本,将 foremost 和 dumpe2fs 团结起来实现快速扫描。

TYPE=$1
DIR=$2
fs=$(df  ${DIR}|tail -n 1 |cut -f 1 -d " ")
block_size=$(sudo  dumpe2fs ${fs} |grep "Block size" |cut -f2 -d ":")
foremost -t ${TYPE} -q -b ${block_size} -i ${fs} -T

第一个参数指定文件范例

第二个参数指定被删掉文件地址的目次

第三行找出文件所属的磁盘

第四行找出磁盘块巨细

第五行挪用foremost扫描被删除的文件。