我想最大限度地减less虚拟磁盘使用的空间,通过清除任何已删除文件上的数据。 虚拟磁盘是一个运行Ubuntu的VDMK,在VirtualBox上有一个Ext4分区。
find已删除文件的最佳方法是什么,并将其归零,以便在导出设备时,磁盘大小只是磁盘上的现有文件?
如果您使用支持它的文件系统,那么您可以使用zerofree 。
如果你不是那么你基本上只需要使用dd写零到每个分区上的文件,直到没有空间。 然后删除填充零的文件。
对于每个文件系统,都喜欢
sudo dd if=/dev/zero of=/zero # ...wait until the filesystem is full... sudo rm /zero
这将在文件系统的所有可用空间上创build一个文件,填充零。 当你删除它时,分区上只剩下零。 不过,我想你仍然需要gzip虚拟磁盘,因为无论如何,零占用空间。 我不确定虚拟磁盘pipe理是多么的聪明。
转储和恢复将工作。
如果你还没有删除文件,你可以这样做:
shred --iterations=0 --exact --zero --remove file
为此,您必须使用自动精简configuration。 还是我错了?