我有一个带有7 GB空闲空间的USB安装硬盘驱动器,我尝试使用以下命令填充伪随机数据:
$ cd /media/username/volume_name
$ sudo dd if=/dev/urandom of=random_data_file.txtrandom_data_file.txt以前并不存在。我期望命令创建文件,向其写入伪随机数据,并在包含的分区满时停止。文件管理器的状态栏最终显示了空闲空间的0 bytes。但是dd命令没有停止,终端模拟器和文件管理器都没有给出任何驱动器已满的通知。在我用Ctrl+C终止命令之后,终端输出声明为40 GB已经写入。我在管理器中选择了该文件,其状态栏还显示其大小为40 GB,比以前的空闲空间多33 GB。
random_data_file.txt已经被写入和覆盖了40 GB /7 GB = 5.7次?如果是后者,那么为什么文件管理器显示其大小大于7GB?在使用文件管理器删除random_data_file.txt之后,它的状态栏恢复到显示为7GB的空闲空间。dd命令创建并将伪随机数据写入输出文件的正确方法是什么,直到其包含的分区已满,而不覆盖任何内容(除了相同分区上的空闲空间),包括该输出文件?发布于 2022-08-31 01:11:52
假设您的磁盘硬件是好的(而不是一个显示假可用空间的脆弱的SD卡),并且您的文件系统没有被损坏的自由职业者和仍在自由职业者中的文件所破坏,那么dd if=/dev/urandom of=random_data_file.txt就不会损坏磁盘或覆盖任何东西(除了random_datafile.txt)。
您可能不需要前面的sudo,而且如果您不确定dd命令是正确的,那么当然不应该以sudo的形式运行它。
它编写的数据比您预期的更多的一个可能原因是,大多数文件系统保留了一些空闲空间(通常为5%),以便当常规用户认为磁盘已满时,root可以继续写入。(再说一次,不要对sudo这样做.)
https://askubuntu.com/questions/1426670
复制相似问题