Fabian (of RPMforge and CentOS fame) wrote a blogpost about using pv (pipe viewer) to watch a datastream through a pipe, such as a dd-over-ssh copy from one machine to another. I knew pv existed, but I've often used dd on systems where pv wasn't available (e.g. rescue CD), or used dd without sending data through pipes. Even in these situations, you can keep an eye on dd's progress: open another terminal window, then run # while sleep 10; do killall -USR1 dd; done and switch back to the shell where dd is running. It will show its status every 10 seconds. Note, your version of dd needs to support this. The dd from RHEL3 doesn't (version 4), but the dd from RHEL5 does (version 5) !
plenty of grains to pick