Acho que o problema é o espaço entre " conv=noerror," e " sync", embora eu não receba exatamente o mesmo erro que você:
$ dd if=/dev/null of=/dev/null bs=128m conv=noerror, sync # With space, fails
dd: unknown conversion
$ dd if=/dev/null of=/dev/null bs=128m conv=noerror,sync # Without space, works
0+0 records in
0+0 records out
0 bytes transferred in 0.065054 secs (0 bytes/sec)
... mas a mensagem de erro recebida é diferente. Geralmente, a mensagem "conversão desconhecida" listará a conversão desconhecida:
$ dd if=/dev/null of=/dev/null bs=128m conv=noerror,wibble
dd: unknown conversion wibble
Acho que o que está acontecendo é que o shell analisa conv=noerror, synccomo dois argumentos, "conv = noerror" e "sync", e depois ddanalisa o primeiro como especificando duas conversões, "noerror" e "" (já que não há nada após a vírgula) e reclama que a opção "" é desconhecida.
Mas esse não é o erro que você está recebendo; o seu realmente lista "sincronização" como a opção desconhecida. A única coisa em que consigo pensar é que você pode ter algo como um espaço ininterrupto entre o "," e o "sync". Nesse caso, o shell o tratará como apenas parte do argumento e passará "conv = noerror, sync" como um único argumento; ddanalisará isso como duas opções e exibirá a mensagem de erro "dd: unknown option sync":
$ dd if=/dev/null of=/dev/null bs=128m conv=noerror, sync # That's a nonbreaking space
dd: unknown conversion sync
^ That's also a nonbreaking space
De qualquer forma, remova o espaço (seja ele qual for) e deve funcionar.
ifeofvalores, eu recebo o erro "dd: conversão desconhecido", mas sem o espaço que ele funciona bem.