首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >除了输出文件和/dev/urandom输入文件之外,没有其他选项的dd可以导致覆盖分区上的其他文件吗?

除了输出文件和/dev/urandom输入文件之外,没有其他选项的dd可以导致覆盖分区上的其他文件吗?
EN

Ask Ubuntu用户
提问于 2022-08-31 00:12:10
回答 1查看 81关注 0票数 0

我有一个带有7 GB空闲空间的USB安装硬盘驱动器,我尝试使用以下命令填充伪随机数据:

代码语言:javascript
复制
$ cd /media/username/volume_name
$ sudo dd if=/dev/urandom of=random_data_file.txt

random_data_file.txt以前并不存在。我期望命令创建文件,向其写入伪随机数据,并在包含的分区满时停止。文件管理器的状态栏最终显示了空闲空间的0 bytes。但是dd命令没有停止,终端模拟器和文件管理器都没有给出任何驱动器已满的通知。在我用Ctrl+C终止命令之后,终端输出声明为40 GB已经写入。我在管理器中选择了该文件,其状态栏还显示其大小为40 GB,比以前的空闲空间多33 GB。

  1. 该命令是否有可能覆盖或修改了我的其他文件、分区或其他分区?或者这是否意味着random_data_file.txt已经被写入和覆盖了40 GB /7 GB = 5.7次?如果是后者,那么为什么文件管理器显示其大小大于7GB?在使用文件管理器删除random_data_file.txt之后,它的状态栏恢复到显示为7GB的空闲空间。
  2. 使用dd命令创建并将伪随机数据写入输出文件的正确方法是什么,直到其包含的分区已满,而不覆盖任何内容(除了相同分区上的空闲空间),包括该输出文件?
EN

回答 1

Ask Ubuntu用户

回答已采纳

发布于 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这样做.)

票数 2
EN
页面原文内容由Ask Ubuntu提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://askubuntu.com/questions/1426670

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档