Show progress of dd

Menu

Transferring an ISO image using dd can require quite some time and I am left wondering how long it will take to complete, since dd is silent, by default, and no information is shown. There are two simple solutions to remedy the situation.

Instructing dd to show progress before it is launched

The progress=status argument instructs dd to display its progress:

dd if=archlinux-2020.02.01-x86_64.iso of=/dev/sdNNN status=progress

where sdNNN is the device identifier, e.g., /dev/sdb.

Quoting from the manual:

status=LEVEL
       The  LEVEL  of  information  to  print  to stderr; 'none' suppresses everything but error messages,
       'noxfer' suppresses the final transfer statistics, 'progress' shows periodic transfer statistics

Instructing dd to show progress after it has been launched

If you forget to specify the status information, you can still get informed about dd progress. Open another terminal and enter the following command.

On Linux:

sudo kill -USR1 $(pgrep ^dd)

On OSX/BSD:

sudo kill -INFO $(pgrep ^dd) # (on OSX)

This displays progress in the dd terminal window without halting the process.

If you would like to get regular updates of the dd progress, then enter:

watch -n5 'sudo kill -USR1 $(pgrep ^dd)'