Я часто записываю файлы ISO на флэш-накопители USB и пытаюсь найти способ контролировать состояние записи. Погуглив это, я нашел множество решений, включая pv
, dcfldd
и сигнал USR1 для команды dd
.
Во всех случаях это выглядит так:
- Файл записывается на флэш-накопитель со скоростью около 100 МБ / с.
- Передача заканчивается (или, возможно, зависает на 99,99%) менее чем за 10 секунд
- Команда передачи остается без ответа в течение нескольких минут, даже не реагируя на прерывания
- Передача заканчивается
Я ожидаю, что поведение будет относительно медленной записью, возможно, около 5 МБ / с, и индикатор выполнения, который прогрессирует равномерно от 0% до 100%. Кажется, что файл быстро записывается в какой-то буфер, а затем медленно записывается на диск.
Вот некоторые команды, которые я пробовал, все с одинаковым результатом:
# function vdd { > sudo dd "$@" & > sudo sh -c "while pkill -10 ^dd$; do sleep 5; done" > } # vdd bs=4096 if="/path/to/ubuntu-15.04-desktop-amd64.iso" of=/dev/sdb
dcfldd bs=4096 if="/path/to/ubuntu-15.04-desktop-amd64.iso" of=/dev/sdb
pv "/path/to/ubuntu-15.04-desktop-amd64.iso" | dd bs=4096 of=/dev/sdb
pv -B 4096 "/path/to/ubuntu-15.04-desktop-amd64.iso" > /dev/sdb
Я искал на страницах man для dd
, pv
и dcfldd
слово "flush" безрезультатно ...