Skip to content

lezgomatt/ezntfs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

99 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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

  • Natively supported by macOS
  • exFAT is less reliable (no journaling), only use for flash drives
  • 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
  • Volumes won't show up on Finder
  • Writing via Apple's native NTFS driver is not officially supported
  • Not free
  • Mature (same developers as NTFS-3G)
  • Kernel driver, should be faster than FUSE

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 .

About

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

Topics

Resources

License

Stars

Watchers

Forks

Sponsor this project

 

Packages

No packages published

Languages