linux 彻底删除、粉碎文件命令shred

linux 彻底删除、粉碎文件命令shred

  (2010-07-20 14:29:52)
标签: 

linux

 

彻底删除

 

粉碎文件

 

命令

 

shred

 

it

分类: linux

shred是一条终端命令,功能是重复覆盖文件,使得即使是昂贵的硬件探测仪器也难以将数据复原,(参见”shred –help”)。这条命令的功能足够适合实现文件粉碎的功效。


 

tiny@tiny-laptop:~$ shred --help

用法: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 进行设置,

您可以查看mount 的man 页面以获得详细信息。

另外,文件系统备份和远程镜像可能会

包含不能被删除的文件副本,这将会

允许碎片文件被恢复。

 


使用方法举例如下:

粉碎一个名为test.txt的文件命令是: 
$shred test.txt 
粉碎多个文件的命令是: 
$shred test1.txt test2.txt

这两条命令的效果是文件依旧存在,但不再是原来的文件了,对比测试可以通过先编辑一个文本文件后保存,然后使用shred命令覆盖此文件,再打开该文本文件即可看出内容不再是原有内容了。如果想要覆盖的同时删除文件(这才是粉碎的表现么),加上参数 -u,命令变为: 
$shred –u test.txt

覆盖一个挂载分区的文件命令是: 
$shred /dev/hda0        //覆盖IDE接口的第一个磁盘设备的第一分区 
$shred /dev/sda2        //覆盖SCSI或SATA接口的第一个磁盘设备的第三分区


 

在终端下使用shred命令来进行文件粉碎操作实在不方便,得益于Nautilus的可扩展性,我们可以给Ubuntu的Nautilus添加右键菜单来执行shred操作:

在终端下输入命令安装Nautilus-actions(中文名被汉化为“Nautilus动作配置”): 
$sudo apt-get install nautilus-actions

然后单击“系统” –> “首选项” –> “Nautilus动作配置” ->单击“Define a new action”按钮

 

然后在“添加新动作”窗口中输入以下信息:

Context Label: Shred粉碎                             //你可以随便想一个名字,这里是显示在右键菜单的名字 
Tool tip: Shred粉碎机                     //一样可以随便想一个描述,这是停留在右键菜单的提示 
Icon: gtk-dialog-warning                   //可以单击Browse或者下拉菜单中选择一个图标 
路径: shred 
参数: -f -u -v -z %M


然后单击“Record all the modified”标签卡,如果只需要这个粉碎右键菜单出现在仅处理文件的时候,那么就单击“仅文件”单选框,同理如果需要出现在仅处理文件夹的时候就单击“仅文件夹”单选框,如果需要文件和文件夹上右键都能出现该粉碎菜单,那么单击“Both”单选框。另外勾选“Appears if selection has multiple files or folders”复选框

 


 

在单击“确定”按钮之后返回“Nautilus动作”窗口,单击“关闭”按钮之后再在终端中输入命令: 
$nautilus –q     //关闭Nautilus进程 
$nautilus         //启动Nautilus进程

这时候再进入主文件夹对一个文件右击,菜单中将出现“Shred粉碎”

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 要彻底删除Linux系统中的文件,可以使用以下命令: 1. rm命令:使用rm命令删除文件时,文件并没有真正被删除,而是被移到了垃圾桶中,可以通过恢复垃圾桶中的文件来找回。要彻底删除文件,可以使用rm命令的-f选项,强制删除文件,例如:rm -f filename。 2. shred命令shred命令可以彻底删除文件,不留任何痕迹。使用shred命令时,可以指定删除文件的次数,例如:shred -n 5 filename。 3. wipe命令:wipe命令也可以彻底删除文件,使用方法与shred类似,例如:wipe -f -r filename。 需要注意的是,彻底删除文件可能会对系统造成不可逆的损害,因此在使用这些命令时要谨慎操作。 ### 回答2: Linux彻底删除文件的过程是将文件从硬盘上彻底擦除,以保证已删除文件不可恢复。在Linux中,删除一个文件后,文件并没有真正从磁盘删除,而是将文件唯一的“文件名”删除,但是文件内容在磁盘上仍然存在,并且可以通过一些工具恢复出来。所以,如果需要彻底删除敏感信息,用户需要采用特殊的方式来删除。 以下介绍两种Linux彻底删除文件的方法: 1. srm命令 srm命令是一个强大的安全删除工具,可以将文件磁盘彻底擦除,防止被恢复。srm命令的使用方法很简单,只需在终端中输入以下命令: srm filepath 其中,filepath为待删除文件的路径。srm命令的优势在于它会针对文件进行多次覆盖,以确保文件不可能被恢复。默认情况下,会对文件进行7次覆盖,可以使用以下命令指定次数: srm -m num filepath 其中,num表示覆盖次数,filepath为待删除文件的路径。 2. shred命令 shred命令是另一种Linux彻底删除文件的工具,与srm命令类似。通过以下命令使用: shred -u filepath 其中,-u参数指示shred命令删除文件后将磁盘空间清零。默认情况下,shred命令会对文件进行25次覆盖,也可以通过以下命令指定次数: shred -n num -u filepath 其中,num表示覆盖次数,filepath为待删除文件的路径。 总体来说,srm命令shred命令都是一些很好的工具,可以帮助用户安全删除敏感信息。但需要注意的是,彻底删除文件是一项比较耗时的操作,特别是在磁盘空间较大的情况下,可能需要等待几分钟或更长时间才能完成。因此,在删除敏感信息之前,最好备份一下重要数据,以防止误删。 ### 回答3: Linux是一种普遍使用的操作系统,它使用各种工具来管理文件和目录。但是,当你删除一个文件时,它并不总是完全消失。删除文件可能只是在文件系统中标记该文件的空间可用,但文件的内容仍然可以从磁盘访问,并且文件仍然可以恢复。对于敏感数据,如密码、个人身份信息和银行帐户信息,这可能会带来安全风险,因此完全删除文件很重要。 在Linux中,你可以使用几种方法来彻底删除文件: 1. 使用shred命令sherd命令可以安全地删除文件并覆盖其内容,以使难以恢复。它使用一种称为“随机数据覆盖”的技术,将文件中原始数据的每个位置都覆盖为随机位。但要注意的是,这个操作可能会非常耗时。 例如: shred -vfuz /path/to/file 2. 使用dd命令:可以使用dd命令以同样的方式覆盖文件内容。 dd是一个用于复制文件并转换数据的程序。可以修改dd的参数来使其覆盖原始数据。 例如: dd if=/dev/urandom of=/path/to/file bs=1M 3. 使用文件管理器:文件管理器中的“彻底删除”选项可以删除文件并在磁盘上覆盖其内容。当鼠标右键单击文件并选择“删除”时,通常会出现此选项。 最后,要牢记,彻底删除文件并不保证完全删除它们。由于许多因素之间的复杂交互,例如文件系统,磁盘控制器和操作系统等,可能还存在某些潜在的数据残留。因此,对于更高度保密的数据,建议使用更高端的删除工具或物理破坏存储介质。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值