我试图恢复ext3文件系统上使用最前面的工具删除的文件。 我想要恢复的文件是一个hpp C ++源代码文件。 但是,最重要的是不会自动支持hpp文件扩展名,所以我必须将其添加到configuration文件。 所以,按照手册页上的说明,我将下面一行添加到configuration文件中:
hpp n 50000 include include ASCII
那么我运行如下:
$foremost -v -T -t hpp -i /dev/md0 -o /home/recover/
它只是显示帮助信息,而不是做任何事情。 如果我将hpp更改为htm或jpg ,则可以使用。 所以显然最重要的是不接受我添加到configuration文件中的自定义文件types。 但是现在我已经看了几十次了,我看不出我做错了什么。 我正在按照说明。 为什么不能认识到我添加到configuration文件中的新文件types?
我偶然发现了同样的问题,并通过查看foremost来源,深入了解了一下。
事实certificate,使用configuration文件添加的自定义types不能用-t选项来select。 如果您在/etc/foremost.conf定义hpptypes并使用,则会find您的文件
foremost -v -T -c /etc/foremost.conf -i /dev/md0 -o /home/recover/
这也将恢复匹配所有内置types的文件,这可能意味着很多文件。 要解决这个问题,当使用-t all (相当于不使用-t )时,修补源文件中不包含任何内buildtypes。 在state.c ,在set_search_def函数结束时,如果strcmp(ft, "all") == 0 ,则调用init_all 。 只需注释掉对init_all的调用,内buildtypes将不再使用。
创build一个新的.conf文件并除去所需types的设置除外。 一个例子是(foremost_pde.conf):
pde y 200000 #include #include ASCII
请确保您删除行首的所有制表符或空格字符,否则行将不会被识别。 保存并closures用户位置的conf文件(例如〜/ Desktop)。 现在使用:
foremost -v -T -c ~/Desktop/foremost_pde.conf -i /dev/md0 -o /home/recover/
你有没有尝试使用-c config file选项?