Mounting Linux Formatted (Ext3) USB Drive on Mac OS 10.6 Snow Leopard (Updated 10/6/2011)

When I copied a 5.8 gig file to FAT32, I encountered the 4 gig file limit. I’d made the file on my UbuntuLinux computer and wanted to be able to copy it to my linux formatted USB drive, then copy it from the linux formatted drive to the Mac. Unfortunately, FAT32 formatted drives have that pesky 4gig limit.

In my experience, the only way to copy a file that large onto a Windows FAT32 formatted disk is to compress it using a zip/7z program of some sort and then slice it into pieces that fit. This is cumbersome, although I remember doing just that eons ago with a program called “slice” on DOS…ah, memories of geekhood.

Image Source: Penguin Flash Drives

Update: On 10/6/2011, I updated the steps to better reflect Snow Leopard, following them as I did so successfully.

Some of the USB External drives that I use are formatted as ext3 or ext4, which are GNU/Linux formats, as opposed to the ones Windows uses (e.g. FAT32, NTFS) and Mac (e.g. HFS).  The challenge is, how to mount a linux formatted (ext2,ext3,ext4) USB external drive on a Mac hard drive running OS X.6 Snow Leopard?

Note: Click on screen shots below to see them at full-size.

After some googling, I found Eric Wingate’s excellent instructions. I’m copying them here in the order I took them:

  1. Download and install MacFuse – Needed for fuse-ext2 to work. From their web site, MacFUSE allows you to extend Mac OS X’s native file handling capabilities via 3rd-party file systems.”
  2. Download and install fuse-ext2 – Allows you mount a linux formatted drive on a Macintosh.
  3. Plug in your external USB linux formatted drive. If the icon for it appears on the Desktop, eject it but leave it plugged in. We’ll manually mount it in a moment. We have to do this because it will be mounted READ ONLY; when we mount it manually, it will come in as READ-WRITE.
  4. On your Macintosh, go to Applications–>Utilities and double-click on Terminal.
  5. At the command line that appears, create a directory that will serve as the symbolic label for the mounted drive:
    $sudo mkdir /Volumes/journeyer
    (Note: “journeyer” is the name of the symbolic label/name for the drive to be mounted)
  6. Change to the appropriate directory/folder so you can run fuse-ext2:
    $cd /usr/local/bin
  7. To find out what the name of the USB external drive is, you can run Disk Utility (also at Applications–>Utilities) so you can see what the name of the drive is. Here’s a screenshot of my Disk Utility.  Note that you may have to right-click on the volume name (journeyer in my case) and get information to identify the “disk identifier:”
  8. Now that we know the name of our Ext3, linux formatted drive is disk2s2, we can continue at the command line in Terminal:
  9. $sudo ./fuse-ext2 /dev/disk2s2 /Volumes/journeyer/ -o force
  10. If all goes, you’ll see something similar to the following in Terminal (at the command line):
  11. More importantly, on your desktop after a moment’s pause, you should see the icon for a volume appear with the label you assigned to it (in this case, “journeyer”).
  12. You can unmount–make the drive go away safely–by typing this at the command line…if you use the command line, the eject process goes smoothly.

    Approach #1 – Using the Command Line
    $sudo umount /Volumes/journeyer/ 
    (This step didn’t work for me on a partitioned USB drive, but approach #2 did)

    OR

    Approach #2 – Right-Click on the Volume
    Right-click on the volume and choose “EJECT journeyer” as shown in the image below:

    Note that another window will pop up if you have a USB external drive that has multiple partitions. Since mine does, I saw this window…you may not:

And, that’s pretty much it! Thanks to Eric Wingate for figuring this out! I hope sharing this process with screenshots helps build on that work…it certainly solves a problem for me.


Subscribe to Around the Corner-MGuhlin.org


Everything posted on Miguel Guhlin’s blogs/wikis are his personal opinion and do not necessarily represent the views of his employer(s) or its clients. Read Full Disclosure

18 Comments

  1. hi,when i did type: sudo ./fuse-ext2 blablabla…it returns to command not found. any suggest?thx, imam.

  2. I got this message:fuse-ext2: version:'0.0.7', fuse_version:'27' [main (../../fuse-ext2/fuse-ext2.c:324)]fuse-ext2: Failed to access '/dev/UNTITLED' [main (../../fuse-ext2/fuse-ext2.c:334)]what went wrong?

  3. I got this message:fuse-ext2: version:'0.0.7', fuse_version:'27' [main (../../fuse-ext2/fuse-ext2.c:324)]fuse-ext2: Failed to access '/dev/UNTITLED' [main (../../fuse-ext2/fuse-ext2.c:334)]what went wrong?

  4. Thank you very much for this.I am now able to recover all my music which was on a Buffalo LAN drive that burned out.

  5. You're the man… My WD worldbook crapped out and I thought I had lost 10 yrs of info. I tried knoppix and everything else possible and this was the easiest most effective method.Thank You very much. I owe you a beer or 12.

  6. You're the man… My WD worldbook crapped out and I thought I had lost 10 yrs of info. I tried knoppix and everything else possible and this was the easiest most effective method.Thank You very much. I owe you a beer or 12.

  7. You're the man… My WD worldbook crapped out and I thought I had lost 10 yrs of info. I tried knoppix and everything else possible and this was the easiest most effective method.Thank You very much. I owe you a beer or 12.

  8. You're the man… My WD worldbook crapped out and I thought I had lost 10 yrs of info. I tried knoppix and everything else possible and this was the easiest most effective method.Thank You very much. I owe you a beer or 12.

  9. Thanks indeed. I was able to recover all my old linux files in a jiffy! (after spending the afternoon looking for a fix;)

Leave a comment