This is not a good way to clone a system.  If you copy /dev/sda1 to /dev/sdb1, you are copying the first partition of the sda drive to the first partition of the sdb drive.  It doesn't copy the bootstrap, or anything else.  It will also not do the right thing if the sdb drive doesn't actually have a partition table (or if the partitions on the sdb drive are not set up appropriately).
 If the two drives are identical (or at least, if they're exactly the same size), and you really want to use dd, you want to copy /dev/sda to /dev/sdb.
If the two drives are not identical, I'd recommend using something like Clonezilla to clone the system. Clonezilla will handle the bootstrap and partition table correctly, and will account for differences in the size of the drives between the source and destination systems.
 Also, you don't mention how, on the second system (that you want to copy to), you got into a position where you were able to dd the contents of the external drive on to the system's hard drive.  If you attempted to do this by actually booting the second system and copying the external drive's contents on to the system's hard drive (while the system was running) - which, from your description, I fear that you may have done - that is definitely not going to work, and will destroy the filesystem on the second system, while the system is running.  To do this successfully, you would need to boot the second system from some other source (such as a live Linux distro image on removable media) and do the dd while booted from that source.
 
                