5

Я пытаюсь скопировать iso на флешку с помощью этой команды:

sudo dd bs=4M if=lubuntu-17.04-desktop-amd64.iso of=/dev/sdc status=progress 

Что довольно просто. Размер iso 912M. Почему выводимый текст здесь останавливается вместо завершения программы?

956301312 bytes (956 MB, 912 MiB) copied, 11.216 s, 85.3 MB/s

Я даже не могу остановить запуск программы с помощью ctr-c .

1 ответ1

2

Вы видите поведение только dd синхронизации данных на диске после операции. Чтобы оптимизировать операции ввода-вывода, Linux часто считывает данные большими блоками, чем запрошено (упреждающее чтение), и задерживает записи, чтобы их можно было объединить (грязный кеш). В конце операции либо dd синхронизирует файл на диске, либо ядро делает это неявно, и процесс остается активным до завершения всех операций записи.

Если на компьютере нет других массовых операций ввода-вывода, вы сможете оценить объем оставшихся для записи данных, посмотрев на значение «Dirty:» в /proc/meminfo - это общий объем данных, ожидающих обработки. записано на диск.

Объем данных, которые система может оставить не записанными в памяти в любой момент времени, можно контролировать с помощью следующих ручек настройки sysctl. По умолчанию используются только отношения. Вы можете определить значение в процентах (коэффициентах) или байтах.

vm.dirty_background_ratio
vm.dirty_ratio
vm.dirty_background_bytes
vm.dirty_bytes

Официальную документацию по этим параметрам вы найдете здесь:

https://www.kernel.org/doc/Documentation/sysctl/vm.txt

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .