首页 网络科技 正文

加硬盘怎么防止文件删除(安全删除软件Secure Delete)

上个文章给大家分享了一个windows系统下的文件安全删除工具SDelete-Gui,在接着给大家分享一个适用于LINUX系统的安全删除工具(SecureDelete)。通常是直接使用桌面环境提供的文件浏览器来删除文件。删除文件实际上并没有真正地将文件的数据从保存设备中抹除掉,原先文件所占用的空间将在之后有数据写入时才被重新使用,若是...

大家好,我是庄朋龙,一个喜欢折腾的码农!上个文章给大家分享了一个windows系统下的 文件安全删除工具 SDelete-Gui,在接着给大家分享一个适用于LINUX系统的安全删除工具(Secure Delete)。

一般在Linux删除文件的时候,在终端中,通常是直接使用「rm」指令;在图形环境下的话,通常是直接使用桌面环境提供的文件浏览器来删除文件。在不特意去设置文件删除方式的情况下,删除文件实际上并没有真正地将文件的数据从保存设备中抹除掉,而仅仅只是删除其在文件系统索引表中的存在,原先文件所占用的空间将在之后有数据写入时才被重新使用,因此在删除文件后,若是没有重新写入数据到原本文件所占用的空间地址上,文件还是可能被还原的。

如果你的隐私文件删除后,依然存在被恢复的可能性,那就无法保证自己的隐私安全了。为了避免删除掉的机密文件被有心人士重新拼凑回来,我们需要进行「安全删除」的工作。安全删除数据的方式有很多种,最直接的就是物理攻击,例如把硬盘敲碎,火烧内存条等等,当然这样的方式虽然十分安全,却也过度极端,保存设备无法重复使用,非常不环保。

实际上,要做到「安全删除」,只要花点时间对空间进行多次的写入动作即可,将原先的数据数据覆盖到完全看不出先前的样子。在Linux上,可以使用secure-delete套件来安全地删除文件、清除可用空间残留先前的文件数据、清除RAM和SWAP中残留的数据。

基于Ubuntu的Linux发行版可以使用apt-get直接下载安装,指令如下:

secure-delete套件中包含下列四种工具指令:

srm 指令就像是rm指令一样,可以直接传入文件或目录路径来删除文件和目录,

也可以加上「-r」参数来删除目录以及底下的所有子目录。

例如要删除「magictest」这个文件,可以使用以下指令:

由于srm缺省会进行38次的覆写动作,因此即使只是删除几MB的文件,也需要一段时间才能完成,如果要查看工作进度可以加上「-v」参数,如下:

将保存空间覆写38次之后,原先的文件已几乎不可能还原回来,但我们真的需要花那么大量的时间来完全粉碎一个文件吗?其实覆写1、2次的效果也已经远胜于完全不覆写了。srm提供了「-l」参数,可以降低删除的安全性,加一个「-l」只会覆写2次,如果再重复使用一次「-l」,写成「-l -l」,则只会覆写一次。例如:

加上「-l」或是「-l -l」参数后,删除文件的速度会快非常多!

sfill指令可以清除保存设备可用空间所残留的使用痕迹,它的工作原理是在保存设备的指定路径创建一个文件来填满该路径所属分割区的整个空间。因此在进行清除的时候,若发现分割区剩余的可用空间突然不够,属正常现象,请不用担心。

将可用空间清除的这个动作最好可以搭配「-z」参数来使用,sfill就会在最后一次覆写可用空间时,将可用空间填为0,有助于数据压缩以及改善写入性能。笔者常用sfill指令与参数如下:

这指令会在根目录中,创建一个内容全为0的文件,并填满根目录所在的分割区的空间。

当然sfill指令运行结束后,会把它创建出来用来填满空间的文件删除,归还可用空间。

sdmem指令可以清除内存(RAM)中残留的使用痕迹,使用时需取得root权限。

清除RAM使用痕迹的机会不大,也许只能避免电脑被入侵时,RAM中数据外泄的可能。不然RAM在关机的时候,数据都清空了,哪还会有数据外泄的可能。若要使用sdmem,可以直接运行以下指令:

如果想节省时间,也可以使用「-l」或是「-l -l」来减少覆写次数。如下:

在清除RAM的过程中,会用满所有的RAM,可能造成电脑停顿甚至是有部份程序当掉的情形。

sswap指令可以清除置换空间(SWAP)中残留的使用痕迹,使用时需取得root权限。

清除SWAP使用痕迹的机会不大,但应该会比清除RAM的机会还大一点点。在使用sswap前,需先知道自己Linux系统上的swap空间在哪个设备路径下。可以使用以下指令来查看:

如上图,笔者的swap空间只有一个,在/dev/sda5,所以可以输入以下指令:

如果你想关注更多开源软件相关的信息请关注我哟! 我是一个喜欢折腾的码农,热衷于分享一些业内新闻和开源界的优秀项目!

本文转载自互联网,如有侵权,联系删除