How can I remount an ejected (not just unmounted) USB drive on Mac?

You can remount an ejected hd using "hdiutil attach" and the appropriate /dev/ device (the BSD name under System Information). As you said, this does not work for flash drives (the /dev/ device will disappear).

kextunload IOUSBMassStorageClass.kext;
kextload /System/Library/Extensions/IOUSBMassStorageClass.kext

Will unmount and remount all USB storage devices...


Terminal Command was off by a little. The real command is:

diskutil mountDisk <<diskx>>*

where you replace <<diskx>> with the disk number you found using

diskutil list

Eample:

diskutil mountDisk disk3

will mount the disk with the id of disk3


If you are using a Mac, one solution is to simply put your computer to sleep and then wake it up again. It's a great solution if you're feeling lazy, but it will obviously be faster to just unplug and re-insert your drive.


I've had the same problem with external USB & Firewire drives; you eject them using 'disk utility' (perhaps by mistake) only to have to physically disconnect/reconnect the drive in order to get Mac OS X to see them again; despite them being visible under 'System Profiler'.

This is more than an inconvenience if using a daisy-chain of Firewire HDDs...

Here's what worked for me; try this from within Terminal. (1st make sure you have 'diskutil' installed - see note below.)

cmd line:

diskutil list

diskutil mountDisk /dev/diskx

where diskx correlates to the physical device reference as displayed under the "list" command e.g. disk2

NB: try MacPorts for http://www.macports.org/