Прогресс при копировании в dd

готовим диски -- быстро и без хлопот

Для заметки: при копировании с помощью команды

dd if=... of=...

иногда надо посмотеть, сколько там откопировалось и не завис ли вообще процесс.

Всё очень просто: процессу надо послать сигнал USR1. При этом на stderr будет выведена текущая статистика (такая же,как обычно выводится в конце). Сделать это можно из другого терминала (сессии или экрана screen). Ну, если совсем невтерпёж, можно нажать ^z (процесс будет остановлен) посмотреть, а потом возобновить:

flycat@flycat:~/.navit> dd if=/dev/zero of=/dev/null
^Z
[1]+  Stopped                 dd if=/dev/zero of=/dev/null
flycat@flycat:~/.navit> ps axf|grep "dd if"
18577 pts/11   T      0:00      |   \_ dd if=/dev/zero of=/dev/null
18583 pts/11   S+     0:00      |   \_  dd if
flycat@flycat:~/.navit> kill -USR1 18577
flycat@flycat:~/.navit> fg
dd if=/dev/zero of=/dev/null
1061378+0 записей считано
1061377+0 записей написано
скопировано 543425024 байта (543 MB), 42,0957 c, 12,9 MB/c

А можно запустить dd в фоне и периодически интересоваться “как у неё дела”:

flycat@flycat:~/.navit> dd if=/dev/zero of=/dev/null &
[1] 18682
flycat@flycat:~/.navit> kill -USR1 18682
flycat@flycat:~/.navit> 9890491+0 записей считано
9890490+0 записей написано
скопировано 5063930880 байт (5,1 GB), 10,2496 c, 494 MB/c
flycat@flycat:~/.navit> kill -USR1 18682
flycat@flycat:~/.navit> 18616702+0 записей считано
18616701+0 записей написано
скопировано 9531750912 байт (9,5 GB), 18,8985 c, 504 MB/c

По мотивам: Show progress during dd copy.

Прогресс при копировании в dd: 2 комментария


  1. [I] sys-apps/bar
    Available versions: 1.10.9 {doc}
    Installed versions: 1.10.9(14:39:48 28.04.2009)(doc)
    Homepage: http://clpbar.sourceforge.net/
    Description: Console Progress Bar

    И использовать как-то так:

    dd if=/dev/random bs=1024 count=512| bar -s 512k -of /dev/null

Добавить комментарий

Ваш адрес email не будет опубликован.