如何用零清除未使用的空间?(ext3,ext4)
我正在寻找比它更聪明的东西
cat /dev/zero > /mnt/X/big_zero ; sync; rm /mnt/X/big_zero
Run Code Online (Sandbox Code Playgroud)
就像FSArchiver正在寻找“已用空间”并忽略未使用但相反的站点。
目的:我想压缩分区图像,因此强烈建议用零填充未使用的空间。
顺便提一句。对于 btrfs :用零清除未使用的空间 (btrfs)
如何安全地删除文件夹及其所有内容,使其无法恢复?
我试过这个shred命令,但它只适用于文件而不是文件夹。
我还发现有一个名为的包secure-delete似乎在 Ubuntu 上运行良好,但是当我尝试使用安装它时,sudo yum install secure-delete我收到以下消息:No package secure-delete available这让我认为该包不可用于CentOS 7.
如何进行?
Linux 上是否有删除文件但首先将其内容归零的命令?
所以如果我这样做,是这样的:
rm -rf /var/cache/pacman/pkg/*
Run Code Online (Sandbox Code Playgroud)
它会用 0 个值覆盖该目录中的每个文件,然后将其擦除
我需要它来压缩我的 VMware 映像文件,而无需先创建包含零的超大文件。
我有兴趣在合理的时间内准确删除 git 存储库。
但要做到这一点需要相当长的时间。在这里,我有一个小型测试存储库,其中.git文件夹 < 5MiB。
$ du -ac ~/tmp/.git | tail -1
4772 total
$ find ~/tmp/.git -type f | wc -l
991
Run Code Online (Sandbox Code Playgroud)
使用shred的默认选项,这需要相当长的时间。在下一个命令中,我用来--force更改权限并--zero在粉碎后用零覆盖。默认的粉碎方法是用随机数据覆盖3次(-n3)。
我还想稍后删除这些文件。根据man shred,--remove=wipesync(默认情况下,当--remove使用时)仅对目录进行操作,但这似乎会减慢我的速度,即使我只对文件进行操作。比较(每次我重新初始化 git 存储库时):
$ time find ~/tmp/.git -type f | xargs shred --force --zero --remove=wipesync
real 8m18.626s
user 0m0.097s
sys 0m1.113s
$ time find ~/tmp/.git -type f | xargs shred --force --zero --remove=wipe
real 0m45.224s
user 0m0.057s
sys …Run Code Online (Sandbox Code Playgroud) 假设您带着笔记本电脑访问了地球上一个恶劣的地方。
小偷即将闯入并偷走您的笔记本电脑。
所以你运行:
rm -rf /folder
Run Code Online (Sandbox Code Playgroud)
但是如果窃贼拥有非常先进的工具来恢复已删除的文件怎么办?也许与联邦调查局/中央情报局的工具一样先进。
也许他们能够恢复已删除的文件夹和文件?
有什么方法可以确保他们不能这样做?
我的印象是,如果希望能够完全删除某个文件而不擦除整个驱动器,那么永远不应该将其存储在 SSD 上。是对的吗?即使使用全磁盘加密,如果获得了密钥,似乎也无法确保取证方法无法恢复该文件,除非向驱动器发出固件擦除命令并用非-数据(因为通常不能依赖固件命令)。因此,如果您希望能够完全安全地删除某些内容,而不是删除存储它的整个驱动器,那么您应该只将其存储在 HDD 和 USB 记忆棒上。正确的?