Fro*_*ame 31 windows virtualbox filesystems
我从这篇文章中学到了使用sdelete作为缩小 VDI 文件的步骤:
sdelete -c c:
Run Code Online (Sandbox Code Playgroud)
但是-c(帮助文本中描述的“清理可用空间”)是什么意思?它不是用零写入可用空间吗?还有呢-z(零可用空间)呢?sdelete -c 和 -z 有什么区别?
我尝试了之前文章中提到的步骤,但未能减小.vid文件大小。然后我关注了这个超级用户帖子,并将选项更改-c为-z,并成功。
因此,它似乎-z将零写入可用空间,并-c写入其他内容(可能是随机位)。
Tho*_*ler 26
我认为这是一个常见的错误。也许 -z 选项在早期版本中不可用。SDelete 1.61 说
-z Zero free space (good for virtual disk optimization)
Run Code Online (Sandbox Code Playgroud)
请注意,这样做会首先将您的硬盘扩展到完整大小。只有在VMWare 的收缩过程中,它才会再次变小。
在我的机器上进行快速测试:
-z took 1:01 minutes
-c took 2:11 minutes
Run Code Online (Sandbox Code Playgroud)
这表明 -z 只写入简单的零,而 -c 是擦除DoD 5220.22-M的军用标准,如SDelete 网站上所写。
Ian*_*oyd 12
当前文档(和程序版本 2.01):
-c:清理可用空间。指定可供正在运行的系统使用的可选空间量。-z:零可用空间(有利于虚拟磁盘优化)。-c:零可用空间(有利于虚拟磁盘优化)。-z:清理可用空间。Clean创建最大的文件,并用随机数据填充它,然后用零填充它。这是大多数人认为的擦拭,这是矫枉过正。
不利的一面是,如果您正在使用虚拟磁盘,或者在虚拟机内部,或者在存储空间上运行它:底层存储系统将被迫分配资源来保存您的随机数据,然后将其保存为零。希望底层存储系统能够意识到刚刚分配给驱动器的所有空间都可以回收,因为所有这些扇区都只包含零。
-z零:简单地向所有扇区写入零。这是您想要的选项,原因有很多:
来源:挂载虚拟硬盘,观察sdelete在两种模式下的I/O操作。
tl;dr:使用 -z 零。它更快、更好、更安全。
这应该更恰当地作为对托马斯回答的评论发布,但由于我还不能这样做,我将其发布在这里。
混淆“-z”和“-c”选项可能是一个“常见错误”,因为多年来 SDelete 已经改变了所述选项的行为。查看下面提供的参考资料,似乎 SDelete 首先有一个“-z”选项,它执行“军用标准擦除”,然后添加了一个“-c”选项以将可用空间归零,然后在 v1.51 和 v1 之间的某个位置。 61 将该行为切换为当前行为。
参考:sysinternals.com 论坛和Microsoft TechNet上的旧 SDelete 主页(通过 archive.org)。
| 归档时间: |
|
| 查看次数: |
34214 次 |
| 最近记录: |