Skip to main content

An easy-to-use wrapper for NTFS-3G on macOS.

Project description

ezNTFS

ezNTFS is an easy-to-use wrapper for NTFS-3G on macOS.

ezNTFS can be used as a menu bar app, or via the CLI in the terminal.

Installation

To use ezNTFS, you will need Python 3, FUSE for macOS (osxfuse), and NTFS-3G installed in your system.

To install NTFS-3G, you may compile and install it yourself (recommended, see instructions at the end), or you may also install it via nix or via brew.

To install ezNTFS, run:

$ pip3 install ezntfs

It should be accessible from the terminal afterwards.

To configure the menu bar app, run the command after installing ezNTFS:

$ sudo ezntfs-app install

This command adds ntfs-3g to a sudoers file, and automatically launches the app on start-up. The app will also be launched right after install.

NOTE: The app icon will only show up if there are NTFS volumes plugged in. You may also need to grant Python access to removable volumes for this to work.

Usage (CLI)

Mount all read-only NTFS volumes using ntfs-3g (root privileges are needed for mounting):

$ sudo ezntfs all

Mount a specific NTFS volume (run ezntfs list to find the disk id):

$ sudo ezntfs <disk id>

Alternatives

Format as exFAT

  • Natively supported by macOS
  • exFAT is less reliable (no journaling), only use for flash drives

Auto-mount script

  • Setup requires disabling System Integrity Protection (SIP) or Sealed System Volume (SSV)
  • Mounts with NTFS-3G even when not needed, which may slow down reads

Mounty

  • Volumes won't show up on Finder
  • Writing via Apple's native NTFS driver is not officially supported

Tuxera NTFS driver

  • Not free
  • Mature (same developers as NTFS-3G)
  • Kernel driver, should be faster than FUSE

Paragon NTFS driver

Compiling and installing NTFS-3G

We recommend compiling and installing NTFS-3G yourself for security. This allows installing it as root, which keeps things secure when added to sudoers.

Instructions

# Clone the git repo (you may want to clone a newer version if available)
git clone --depth 1 --branch 2021.8.22 https://github.com/tuxera/ntfs-3g.git
cd ntfs-3g

# Install the dependencies needed for compilation
brew install autoconf automake libgcrypt libtool pkg-config gettext

# Compile and install ntfs-3g
export LDFLAGS=-lintl
./autogen.sh
./configure \
    --disable-debug \
    --disable-dependency-tracking \
    --with-fuse=external \
    --prefix=/usr/local \
    --exec-prefix=/usr/local \
    --mandir=/usr/local/share/man \
    --sbindir=/usr/local/sbin
make
sudo make install

# Delete the cloned git repo
rm -r .

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ezntfs-1.1.4.tar.gz (11.0 kB view hashes)

Uploaded Source

Built Distribution

ezntfs-1.1.4-py3-none-any.whl (11.1 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page