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.

username@desktop:~$ dd if=/dev/random of=outfile

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

username@desktop:~$ 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.

username@desktop:~$ 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

Author: Voxel@Night

Leave a Reply