云网牛站
所在位置:首页 > Linux常用命令大全 > 更多实用命令 > shred命令

shred命令

shred命令相关的命令有:rmdir,rm.

用法

shred [选项]... 文件...

多次覆盖文件,使得即使是昂贵的硬件探测仪器也难以将数据复原。

参数

长选项必须使用的参数对于短选项时也是必需使用的。

-f, --force
必要时修改权限以使目标可写

-n, --iterations=N
覆盖N 次,而非使用默认的3 次

--random-source=文件
从指定文件中取出随机字节

-s, --size=N
粉碎数据为指定字节的碎片(可使用K、M 和G 作为单位)

-u, --remove
覆盖后截断并删除文件

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

-x, --exact
不将文件大小增加至最接近的块大小

-z, --zero
最后一次使用0 进行覆盖以隐藏覆盖动作

--help
显示此帮助信息并退出

--version
显示版本信息并退出

如果指定文件为"-",粉碎标准输出的数据。

如果加上--remove (-u)选项表示删除文件。默认的方式是不删除文件,因为覆盖像/dev/hda 等的设备文件是很普遍的,而这些文件通常不应删除。当覆盖一般文件时,绝大多数人都会使用--remove 选项。

警告:请注意使用shred 时有一个很重要的条件:

文件系统会在原来的位置覆盖指定的数据。传统的文件系统符合此条件,但许多现代的文件系统都不符合条件。以下是会令shred 无效或不担保一定有效的文件系统的例子:

* 有纪录结构或是日志式文件系统,如AIX 及Solaris 使用的文件系统 (以及JFS、ReiserFS、XFS、Ext3 等)

* 会重复写入数据,及即使一部份写入动作失败后仍可继续的文件系统,如使用RAID 的文件系统

* 会不时进行快照记录的文件系统,像Network Applicance 的NFS 服务器

* 文件系统是存放于缓存位置,比如NFS 第三版用户端

* 压缩文件系统

在Ext3 文件系统中,以上免责声明仅适用于启用了data=journal 模式的情况,此时文件日志记录了附加的元数据 shred 的作用将受到影响。在data=ordered(默认)或data=writeback 模式下shred 仍然有效。

Ext3 日志模式可通过向/etc/fstab 的挂载选项中添加data=something 进行设置,您可以查看mountman 页面以获得详细信息。

另外,文件系统备份和远程镜像可能会包含不能被删除的文件副本,这将会允许碎片文件被恢复。

实例

[root@tianye002 ~]# shred test.sh #粉碎文件

[root@tianye002 ~]# shred -u test.sh #粉碎文件,并删除

相关命令