I have a mid 2011 MacBook Pro 15" running Lion.
I have seen this behavior across 3 different external hardrives, with varying manufacturers (2x Seagate, 1 Western Digital), different file system formats and different USB ports.
If I'm using an External HDD, and for whatever reason take it out without ejecting the drive, Mac will refuse to mount it again. Some times, if I go into Disk utilities and Repair Disk it, it'll work. Other times, I have to go to a Windows machine, plug it in, eject it properly and then come back. It almost always works after this, and if not repeating this usually fixes it.
Mac will detect it, and all of the partitions on it, but it will not mount it. I can see the partitions in disk util, but mounting them always fails.
What are the possible causes for this? Is there any concrete way to prevent this from happening, besides being super careful when ejecting?
I'm pretty sure it's not because of bad blocks etc. as two of the three harddrives showed this behavior within a week of being bought.