carbon copy cloner is great.
you can even make the external bootable with the cloned data.
you can even partition your external and have multiple clones of your hdd all bootable independently.
i have only ever used ccc but i have heard that superduper is also good.