Getting progress from dd

Just a real quick post on how to get progress updates from dd.

The dd command normally doesn’t display any progress updates when you run it.

In order to get dd to print out its current progress, send the USR1 signal to the dd process.

Step 1:
Start dd.

[email protected]:~$ dd if=/dev/random of=outfile

Step 2:
Get the PID (Process ID) of dd.

[email protected]:~$ ps a
-- snip --
9158 pts/30 S+ 0:00 dd if=/dev/random of=outfile
9187 pts/31 R+ 0:00 ps a

Step 3:
Send the USR1 signal to dd.

[email protected]:~$ kill -USR1 9158

And something like this will be printed out on the terminal that dd is running on:

0+133 records in
1+0 records out
512 bytes (512 B) copied, 608.538 s, 0.0 kB/s

That’s it.
More info:
dd man page
ps man page
kill man page

Leave a Reply