Часто используется для многострочного вывода.
Сравните
echo "first line" >output
echo "second line" >>output
echo "third line" >>output
и
cat >output <<"END"
first line
second line
third line
END
Оба должны делать то же самое, но особенно с длинным текстом вторая версия проще.
Ваша команда выглядит нормально, просто попробуйте несколько вещей, дважды проверьте имя устройства, убедитесь, что устройство не подключено во время записи, и в конце попробуйте запустить команду синхронизации.
dd if=CentOS-7-x86_64-DVD-1708.iso of=/dev/sdc ; sync
Я гонялся за этой же ошибкой и оказалось, что флешка, которую я использовал, была неисправна. Я узнал об этом, запустив немедленную проверку после его создания. Вот пример того, как будет выглядеть успешная проверка:
# sha256sum CentOS-7-x86_64-DVD-1804.iso
506e4e06abf778c3435b4e5745df13e79ebfc86565d7ea1e128067ef6b5a6345 CentOS-7-x86_64-DVD-1804.iso
# dd if=CentOS-7-x86_64-DVD-1804.iso bs=1024k of=/dev/sdz oflag=sync
4263+0 records in
4263+0 records out
4470079488 bytes (4.5 GB) copied, 1022.82 s, 4.37 MB/s
# dd if=/dev/sdz bs=1024k count=4263 | sha256sum
506e4e06abf778c3435b4e5745df13e79ebfc86565d7ea1e128067ef6b5a6345 -
Поскольку размер USB-устройства может быть немного больше исходного ISO-образа, важно ограничить объем считываемых данных теми же данными, которые были записаны. ("количество=")
На моем сломанном USB-накопителе после пары сотен блоков я получил ошибку ввода-вывода при чтении, хотя он только что был записан без ошибок.