macos-fuse-t / fuse-t

Other
808 stars 3 forks source link

NTFS and exFAT drivers #20

Closed albertputinjobs closed 1 year ago

albertputinjobs commented 1 year ago

can you make a ntfs and exfat driver like tuxera or paragon plz

macos-fuse-t commented 1 year ago

you can compile it yourself: https://github.com/macos-fuse-t/ntfs-3g

albertputinjobs commented 1 year ago

It is too confusing why don't use make your own ntfs driver and sell it on mac app store for ntfs and exfat

On Sat, 18 Mar 2023 at 21:13, Alex Fishman @.***> wrote:

you can compile it yourself: https://github.com/macos-fuse-t/ntfs-3g

— Reply to this email directly, view it on GitHub https://github.com/macos-fuse-t/fuse-t/issues/20#issuecomment-1474881891, or unsubscribe https://github.com/notifications/unsubscribe-auth/AN2GTPKYPESFPONMQZIWSV3W4XJ25ANCNFSM6AAAAAAV7NCARA . You are receiving this because you authored the thread.Message ID: @.***>

macos-fuse-t commented 1 year ago

as you mentioned there are available solutions. why do you need another one?

albertputinjobs commented 1 year ago

because those are not working when they ask to enable kext in settings they are not showing up.

there is no available solution without enabling kext in settings and they are not showing up even if they do show up it asks to restart and when I did it does not work!

On Sat, 18 Mar 2023 at 23:29, Alex Fishman @.***> wrote:

as you mentioned there are available solutions. why do you need another one?

— Reply to this email directly, view it on GitHub https://github.com/macos-fuse-t/fuse-t/issues/20#issuecomment-1474932808, or unsubscribe https://github.com/notifications/unsubscribe-auth/AN2GTPNBXJS7X7TCIK6CYHTW4XZY5ANCNFSM6AAAAAAV7NCARA . You are receiving this because you authored the thread.Message ID: @.***>

albertputinjobs commented 1 year ago

It is not mounting drives

Screenshot 2023-05-01 at 10 37 01 AM
macos-fuse-t commented 1 year ago

Did you create a mount point first (/Volumes/CCC....) ?

On Mon, May 1, 2023 at 8:10 AM albertputinjobs @.***> wrote:

It is not mounting drives [image: Screenshot 2023-05-01 at 10 37 01 AM] https://user-images.githubusercontent.com/57960893/235409641-20deb3a5-ba19-430d-9df3-00d468a0edd4.png

— Reply to this email directly, view it on GitHub https://github.com/macos-fuse-t/fuse-t/issues/20#issuecomment-1529355447, or unsubscribe https://github.com/notifications/unsubscribe-auth/A24KXFPHD6BKHUAWMIYRGXTXD5ASVANCNFSM6AAAAAAV7NCARA . You are receiving this because you commented.Message ID: @.***>

albertputinjobs commented 1 year ago

can u help me how to do that ?

Rastafabisch commented 1 year ago

I'm having trouble compiling the NTFS driver as well – during the make install stage:

if [ ! "/lib" -ef "/usr/local/lib" ]; then \
        /bin/mv -f "//usr/local/lib"/libntfs-3g.so* "//lib";  \
    fi
mv: rename //usr/local/lib/libntfs-3g.so* to //lib: No such file or directory

This happens no matter which --prefix=/opt… I run ./configure with.

Could you provide a homebrew formula for nfts-3g as well?

Rastafabisch commented 1 year ago

I fixed it by appending --exec_prefix=/opt… to the ./configurecommand.

albertputinjobs commented 1 year ago

can u make a video are u able to mount ?

asamahy commented 1 year ago

@albertputinjobs

  1. download or clone the repository
  2. using terminal cd inside the ntfs-3g directory
  3. run the following commands one by one: (assuming you already installed FUSE-T)
    ./autogen
    LDFLAGS="-L/usr/local/lib -lintl" ./configure --with-fuse=/usr/local/lib/libfuse-t.dylib --prefix=/usr/local --mandir=/usr/local/share/man --exec_prefix=/usr/local
    make
    make install
  4. and to mount a drive: sudo ntfs-3g /dev/DISK-LOCATION /Volumes/MOUNT-NAME if it complains about not finding the mount point then create it first using mkdir: sudo mkdir /Volumes/MOUNT-NAME

P.S: change DISK-LOCATION and MOUNT-NAME with your corresponding one. you can find you disk location using diskutil list

albertputinjobs commented 1 year ago

this technology works but it is very slow read write speed it is taking lot of minutes. iboysoft ntfs is much faster than this

asamahy commented 1 year ago

Slow yet is completely free. btw iboysoft does make at least 3 false claims about ntfs-3g 1) it does support Ventura. 2) it does support automount. 3) and it can repair NTFS disks.

anyways this is not a who done it better thread, you asked how to compile and use for NTFS drives and an answer was provided hopefully with an easy to follow steps.

AhmedYasinKUL commented 7 months ago

@albertputinjobs

  1. download or clone the repository
  2. using terminal cd inside the ntfs-3g directory
  3. run the following commands one by one: (assuming you already installed FUSE-T)
./autogen
LDFLAGS="-L/usr/local/lib -lintl" ./configure --with-fuse=/usr/local/lib/libfuse-t.dylib --prefix=/usr/local --mandir=/usr/local/share/man --exec_prefix=/usr/local
make
make install
  1. and to mount a drive: sudo ntfs-3g /dev/DISK-LOCATION /Volumes/MOUNT-NAME if it complains about not finding the mount point then create it first using mkdir: sudo mkdir /Volumes/MOUNT-NAME

P.S: change DISK-LOCATION and MOUNT-NAME with your corresponding one. you can find you disk location using diskutil list

It doesn't work for me since it could not find libintl file. To solve this, I used:

LDFLAGS="-L/usr/local/lib -L/opt/homebrew/Cellar/gettext/0.22.3/lib/ -lintl" ./configure --with-fuse=/usr/local/lib/libfuse-t.dylib --prefix=/usr/local --mandir=/usr/local/share/man --exec_prefix=/usr/local

It worked for me but now, sudo ntfs-3g command gives an error like:

dyld[49668]: Symbol not found: _fuse_destroy
  Referenced from: <E48335E1-6AC2-3104-84AC-4218ABAFA84F> /usr/local/bin/ntfs-3g
  Expected in:     <no uuid> unknown
zsh: abort      sudo ntfs-3g

Do you have any idea about that? I am running MacOS Ventura.

macos-fuse-t commented 7 months ago

Is /usr/local/bin/ntfs-3g a correct binary? What is the output of otool -L /usr/local/bin/ntfs-3g

AhmedYasinKUL commented 7 months ago

Is /usr/local/bin/ntfs-3g a correct binary? What is the output of otool -L /usr/local/bin/ntfs-3g

Here is the output:

otool -L /usr/local/bin/ntfs-3g
/usr/local/bin/ntfs-3g:
    @rpath/libfuse-t.dylib (compatibility version 0.0.0, current version 0.0.0)
    /usr/local/lib/libntfs-3g.89.dylib (compatibility version 90.0.0, current version 90.0.0)
    /opt/homebrew/opt/gettext/lib/libintl.8.dylib (compatibility version 13.0.0, current version 13.0.0)
    /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1336.0.0)
    /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation (compatibility version 150.0.0, current version 2048.1.255)
macos-fuse-t commented 7 months ago

sudo install_name_tool -add_rpath /usr/local/lib /usr/local/bin/ntfs-3g

albertputinjobs commented 6 months ago

autogen errors:

z@Zs-MacBook-Pro ntfs-3g-edge % sh autogen.sh Running autoreconf --verbose --install --force autoreconf: export WARNINGS= autoreconf: Entering directory '.' autoreconf: configure.ac: not using Gettext autoreconf: running: aclocal --force -I m4 configure.ac:329: warning: macro 'AM_PATH_LIBGCRYPT' not found in library autoreconf: configure.ac: tracing autoreconf: running: glibtoolize --copy --force glibtoolize: putting auxiliary files in '.'. glibtoolize: copying file './ltmain.sh' glibtoolize: putting macros in AC_CONFIG_MACRO_DIRS, 'm4'. glibtoolize: copying file 'm4/libtool.m4' glibtoolize: copying file 'm4/ltoptions.m4' glibtoolize: copying file 'm4/ltsugar.m4' glibtoolize: copying file 'm4/ltversion.m4' glibtoolize: copying file 'm4/lt~obsolete.m4' glibtoolize: Remember to add 'LT_INIT' to configure.ac. autoreconf: configure.ac: not using Intltool autoreconf: configure.ac: not using Gtkdoc autoreconf: running: aclocal --force -I m4 configure.ac:329: warning: macro 'AM_PATH_LIBGCRYPT' not found in library autoreconf: running: /opt/homebrew/Cellar/autoconf/2.71/bin/autoconf --force configure.ac:189: warning: The macro AC_GNU_SOURCE' is obsolete. configure.ac:189: You should run autoupdate. ./lib/autoconf/specific.m4:312: AC_GNU_SOURCE is expanded from... configure.ac:189: the top level configure.ac:467: warning: The macroAC_HEADER_STDC' is obsolete. configure.ac:467: You should run autoupdate. ./lib/autoconf/headers.m4:704: AC_HEADER_STDC is expanded from... configure.ac:467: the top level configure.ac:246: error: possibly undefined macro: AC_MSG_ERROR If this token and others are legitimate, please use m4_pattern_allow. See the Autoconf documentation. configure.ac:329: error: possibly undefined macro: AM_PATH_LIBGCRYPT configure.ac:334: error: possibly undefined macro: AC_MSG_WARN autoreconf: error: /opt/homebrew/Cellar/autoconf/2.71/bin/autoconf failed with exit status: 1

How to fix

albertputinjobs commented 6 months ago

fixed above with brew install libgcrypt

albertputinjobs commented 6 months ago

I got fuse.h error and this fixes it ./configure --exec-prefix=/usr/local && make && sudo make install

albertputinjobs commented 6 months ago

and then using rpath command and then finally works

albertputinjobs commented 6 months ago
Screenshot 2023-12-17 at 12 45 56 PM

How to fix invalid file system ? I did create mount point with mkdir

macos-fuse-t commented 6 months ago

isn't it /dev/disk15s2 ?

albertputinjobs commented 6 months ago

I tried that earlier before did not work

albertputinjobs commented 6 months ago

I freshly formatted a pendrive in windows ntfs and I tried it again with new mkdir and after the mount command same error invalid file system

Screenshot 2023-12-17 at 3 50 38 PM
albertputinjobs commented 6 months ago

I just created a folder and dragged it into the NTFS-3g command (sudo ntfs-3g /dev/disk5s2 /Users/z/untitled\ folder ) finally it worked but it is very very slow to use it for any real use.

Screenshot 2023-12-17 at 4 16 35 PM

Thanks for creating this amazing software anyways!