彻底删除Linux下的文件


在Linux中删除文件一般使用rm命令,但是rm命令并不会真的清空保存该文件的数据块的内容,而只是释放了该文件所占用的索引节点和数据块。因此用rm命令删除的文件是可以通过一些方法恢复的(比如可以用debugfs恢复)。

有些时候我们要彻底删除一些文件,可以使用shred命令来实现,shred是coreutils的一部分,所以Linux中基本都会有这个命令。

使用shred命令彻底删除文件的方法:

$ shred -u file

shred会用一些随机内容覆盖文件所在的节点和数据块,并删除文件(-u参数)。

如果想清除的更彻底一点可以加 -z 参数,意思是先用随机数据填充,最后再用0填充

$ shred -u -z file

另外shred还可以清除整个分区或磁盘,比如想彻底清除/dev/sdb1分区的内容可以这样:

$ shred /dev/sdb1 (注意不要加-u参数)


shred命令的详细参数:
-f, --force (如有必要的话)更改文件权限以允许写入

-n, --iterations=N 重写N次,默认为3次

--random-source=FILE 从指定文件随机读取数据

-s, --size=N 将文件粉碎为固定大小 (可使用后缀如K、M、G等)

-u, --remove 覆盖重写后截断并移除文件

-v, --verbose 显示详细进度信息

-z, --zero - 在最后用0覆盖/填充数据

--help 显示帮助

--version 显示版本信息

 

原文链接:

http://www.linuxsong.org/2010/12/shred-file/

, ,

《 “彻底删除Linux下的文件” 》 有 2 条评论

  1. linux下利用grep和dd命令恢复被mv命令覆盖的文件内容
    http://www.run-debug.com/?p=683

    Linux rm 文件恢复
    http://chenjiehua.me/linux/linux-rm-recovery.html

    使用GREP恢复被删文件内容
    https://coolshell.cn/articles/2822.html

    误删文件不用怕 grep命令帮你恢复
    http://os.51cto.com/art/201008/221133.htm

    在Linux下不小心把重要文件删除了该怎么办?别着急,我教你
    http://www.ywadmin.com/?id=76

    linux下恢复误删除的文件
    https://www.52os.net/articles/linux-extundelete-recover-files.html

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注