要求
我想将文件以不同的偏移量写入分区。
分区 /dev/part2 挂载在 /mypart
我尝试了以下命令:
dd if=/dev/urandom of=/mypart/aaa bs=1024 seek=0 count=15000
dd if=/dev/urandom of=/mypart/aaa bs=1024 seek=15000 count=15000
dd if=/dev/urandom of=/mypart/aaa bs=1024 seek=30000 count=15000
他们在做我想做的事吗?他们是否将文件写入偏移量为 0、15000K 和 30000K 的分区?
seek
如果我省略from ,文件写入的偏移量是多少dd
?
dd if=/dev/urandom of=/mypart/aaa bs=1024 count=15000
答案1
您无法使用 dd 这种方式在“分区偏移量”处“写入文件”——您只是将数据写入该分区上已安装文件系统内名为“aaa”的文件中。
“seek=”确实会导致 dd 在开始写入之前 lseek 到给定位置——这意味着它将简单地创建一个名为 /mypart/aaa 的文件,并在写入之前 lseek 到该文件中给定数量的块。
如果省略“seek=”,dd 将从名为“aaa”的文件的开头开始写入。
答案2
回复:“他们在做我想做的事吗”
尝试
strace dd if=/dev/urandom of=/mypart/aaa bs=1024 seek=15000 count=15000
并查看正在进行哪些系统调用。