По предыдущему вашему логу, можно сделать следующие выводы.
1. dd обнулил mbr и pt, о чем сказал сам и сказал fdisk
> Устройство не содержит ни верной таблицы разделов DOS, ни метки диска Sun, SGI или OSF
2. У вас получилось создать раздел fdisk'ом и записать данные о разделе, после чего была вызвана функция перечитывания информации о разделах.
И если бы после этого считались данные, которые были записаны этими двумя утилитами, у вас должно было появиться блочное устройство /dev/sdc1
То, что оно не появилось, может говорить о том, что данные, которые пишутся на флешку не эквивалетны данным, которые с нее считываются. Это может происходить например, потому что флешка умерла или потому что существует какая-то системная (может быть аппаратная) проблема. Если с другими флешками на том же usb порту такого волшебства не происходит, значит скорее всего сдохла флешка.
попробуйте перегрузить тачку и сделать то же самое. возможно звучит смешно, но такую ситуацию я видел один раз — сглючил udev. перезагрузка — быстрое и гарантированное решение, возможно без нее, но это надо на месте смотреть где что случилось не так.
Я не возьмусь просить о выполнении такой работы, но судя по комментариям, готовое решение в свободном доступе действительно отсутствует. Видимо задача настолько атомарна, что никто не посчитал нужным выделять ее в отдельное решение. Тем не менее, оно востребовано. Если вам интересно это написать, то ваша, может быть выполненная работа, закроет еще одну типичную задачу и все станет чуточку лучше. :)
# создаем файл со случайным содержимым
$ dd if=/dev/urandom of=/tmp/test.write bs=1M count=10
# записываем этот мусор на флешку
$ dd if=/tmp/test.write of=/dev/sdc bs=1M count=10
$ sync
# перевтыкаем флешку и считываем тот же блок мусора
$ dd if=/dev/sdc of=/tmp/test.read bs=1M count=10
# считаем хэши на этой паре файлов
$ md5sum /tmp/test.write
$ md5sum /tmp/test.read
Если они не совпадают, и с другими флешками такой ерунды нет, значит проблемную флешку можно выкинуть.