How do I read (mount and access files) ext3 / ext4 external hard disk partition under Mac OS X?

Apple Mac OS X cannot directly mount and use ext3 and/or ext4 file systems. In other words, you need to use 3rd party driver or application to access ext3 / ext4 file systems. Another option is to use Oracle VM VirtualBox application which is an x86 virtualization software package for OS X. You can use any guest os like Debian, Ubuntu or Fedora Linux to access ext3 / ext4 file systems.

Advertisement

Configure VirtualBox To Access External USB Device

Open the VirtualBox app but do not start Linux guest operating systems. Do not attach external USB hard disk. First, select guest operating systems and click on settings (Machine > Settings).

Fig.01: Linux Virtualbox Guest Settings

Fig.01: Linux Virtualbox Guest Settings

Click on Ports tab. Do not click on add button which shows all USB devices as follows:
Fig.02: List of all detected USB devices

Fig.02: List of all detected USB devices

You need to add a new usb filter so that Virtualbox grabs external hard disk before Apple OS X:

Fig.03: Adding a new USB filter

Fig.03: Adding a new USB filter

The new empty string (new filter 1) will match to any attached USB disk. Now, start your Linux guest and wait till you see Linux console or GUI login window. Connect your USB hard disk to Mac OS X (usb device detected as /dev/sda):
Fig.04: Linux VM detected USB hard disk / USB pen

Fig.04: Linux VM detected USB hard disk / USB pen

Login to Linux guest using ssh or console. You can see your external hard disk details using any one of the following commands under Linux:
tail -f /var/log/messages
OR
fdisk -l
You can mount it as follows:
mkdir /media/usb
mount /dev/sdd1 /media/usb

Replace /dev/sdd1 with actual device name.

How Do I Copy Files To Apple OS X?

You can install samba on Linux and share file with Apple OS X. Another option is to use rsync or scp / sftp client from Apple OS X:
rsync -av user@debian.guest:/media/usb/datadir1/ ~/Desktops/datadir1/
scp user@debian.guest:/media/usb/data/sales.dat /path/to/dest

🥺 Was this helpful? Please add a comment to show your appreciation or feedback.

nixCrat Tux Pixel Penguin
Hi! 🤠
I'm Vivek Gite, and I write about Linux, macOS, Unix, IT, programming, infosec, and open source. Subscribe to my RSS feed or email newsletter for updates.

13 comments… add one
  • Deluxe May 12, 2010 @ 15:42

    MacFuse?

    • 🛡️ Vivek Gite (Author and Admin) nixCraft May 12, 2010 @ 16:14

      I wasn’t aware of MacFuse. Thanks!

      http://code.google.com/p/macfuse/

    • Cyjan Oct 5, 2012 @ 4:52

      MacFuse is good but will not read EXT4 partition , in which case the awesome guide above is the only solution.
      thank you!

  • Scott May 25, 2010 @ 16:03

    Awesome tip! I can use this.

    MacFuse makes your entire system very unstable. It gives many kernel panics. Eek! YMMV.

  • Eric Aug 5, 2010 @ 6:36

    It’s perfectly stable, at least under Snow Leopard. But I can’t find any module yet for ext4.

  • Hendy Sep 28, 2010 @ 1:42

    What about internal disks? Would this work for a partition on my HD?

  • joseluissc Oct 12, 2010 @ 21:39

    nfs?

  • Douglas Sep 11, 2011 @ 14:55

    What about mounting Ext3/4 volumes under PowerPC OS X (the “PowerPC” part is very important)? I suppose “an x86 virtualization software package” wouldn’t help there.

  • Drew Dec 3, 2011 @ 19:29

    This totally worked and was much easier than any other tutorial I saw out there. Awesome info!

  • Christian Feb 19, 2012 @ 2:25

    Thank you for this great guide! After I read and followed your instructions step by step it worked like a charm.

  • Partha Feb 25, 2012 @ 8:59

    Worked great .. after all other efforts failed … Thanks a ton dude … :-)

  • Peter Feb 6, 2013 @ 5:46

    Thanks for doing the heavy lifting here! My only comment is that I had to install the Extension pack for VirtualBox 4.2.6, but that was a non-issue. My Ubuntu VM auto-mounted the drive. Very cool.

Leave a Reply

Your email address will not be published. Required fields are marked *

Use HTML <pre>...</pre> for code samples. Your comment will appear only after approval by the site admin.