The dd Texinfo doc says, for the conv= option (https://gnu.org/s/coreutils/manual/html_node/dd-invocation.html)
'fdatasync' Synchronize output data just before finishing. This forces a physical write of output data. 'fsync' Synchronize output data and metadata just before finishing. This forces a physical write of output data and metadata. Weirdly, these descriptions are inducing quite a bit of FUD in me. Why would I ever want the writes to be incomplete after running dd? Seems like that is dd's whole purpose. Well, I suppose it is too late to make such a radical change as forcing a final sync. In which case I suggest adding another sentence along the lines of "If these options are not specified, the data will be physically written when the system schedules the syncs, ordinarily every few seconds" (correct?). "You can also manually sync the output filesystem yourself afterwards (xref sync)." Otherwise it feels uncertain when or whether the data will be physically written, or how to look into it further. As for "metadata", what does dd have to do with metadata? My wild guess is that this is referring to filesystem metadata, not anything about dd specifically. Whatever the case, I suggest adding a word or two to the doc to give a clue. Further, why would I want data to be synced and not metadata? Seems like fdatasync and fsync should both do both; or at least document that normally they'd be used together. Or, if there is a real-life case where a user would want one and not the other, how about documenting that? My imagination is failing me, but presumably these seemingly-undesirable options were invented for a reason. BTW, I came across these options on a random page discussing dumping a .iso to a USB drive; the example was dd if=foo.iso of=/dev/sde conv=fdatasync .. seems now like fsync should also have been given, for certainty. --thanks, karl.