You can make dd faster by specifying a good
# dd if=/dev/sda2 of=./sda2.bak bs=8192
8192 is a magic number. There are may be other good sizes for
bs for different systems. But 8192 works pretty well for me.
It may be a little bit old and off topic, but 8192 is tested a good number in OCaml systems programming (see "2.10 The cost of system calls and buffers") that is the not too large and is large enough to achieve good I/O throughput.