External drives as a backup medium are OK, as long as you make sure to not use that drive for anything else (simply to not wear it out too fast), and as long as you store it elsewhere safe. As has been mentioned, a fire or water-damage can occur, and a broken backup doesn't help.
Also, make sure to backup the backup software! If you can do, make a live-CD thing that contains a minimal OS plus the backup software. That way you can backup and restore independently of the machine. Also, think about what you need to backup. A whole system image is nice for quick restore, but you may also restore some nasty virus/worm that way. A data-only backup is somewhat "safer", but requires you to re-install the OS and applications by hand first.
What i usually do is to install the OS, then install all the current updates and applications, then make a full image-backup of that system. After that, i only backup the working data on a regular basis. That way you can have a quick restore of the basic system & apps, while you have quick backups of the working data.
Using two drives is also a good idea. Make one backup on the first drive, the next on the second, the next in the first again, etc. That way you also have a fallback in case one drive goes mad.
In any case, i'm highly suspect about the online data storages. You simply don't know what can happen there. The access may get hacked. The company itself may do some nasty things. Not that i want to imply something, but you must be aware that by using such services you hand out all your data to complete strangers. You may encrypt it first, but that also means making the backup more complicated.
Also, be aware that without internet-access, and a fast one for that matter, the usability factor of such an online storage is rather limited to non-existent.
Greetings,
Chris