# 10.0 RC3: fuse-ntfsfs not mounting



## Aceso (Nov 15, 2013)

Fresh 10.0RC-3 install, generic kernel: I am having difficulty mounting USB drive file systems, and wondering if anyone can school me on how FUSE interacts with the kernel (as I under stand it is part of the base).

For a WD NTFS drive here is what I am getting:


```
# camcontrol devlist
<OCZ-VERTEX4 1.5>                  at scbus2 target 0 lun 0 (ada0,pass0)
<WDC WD1002FAEX-00Z3A0 05.01D05>   at scbus4 target 0 lun 0 (ada1,pass1)
<WDC WD1002FAEX-00Z3A0 05.01D05>   at scbus5 target 0 lun 0 (ada2,pass2)
<WDC WD1002FAEX-00Z3A0 05.01D05>   at scbus6 target 0 lun 0 (ada3,pass3)
<WDC WD1002FAEX-00Z3A0 05.01D05>   at scbus7 target 0 lun 0 (ada4,pass4)
<WD My Passport 0740 1003>         at scbus8 target 0 lun 0 (da0,pass5)
<WD SES Device 1003>               at scbus8 target 0 lun 1 (pass6,ses0)
<SanDisk SDDR-113 1.00>            at scbus9 target 0 lun 0 (da1,pass7)
```


```
# gpart show da0
=>        63  1953458113  da0  MBR  (931G)
          63        1985       - free -  (993K)
        2048  1953456128    1  ntfs  (931G)
```


```
ls /dev/da*
/dev/da0        /dev/da0s1      /dev/da1        /dev/da1s1
```

No fuse module loaded, nor can I load it, and fusefs_enable="YES" had no effect in rc.conf:

```
# kldstat
Id Refs Address            Size     Name
 1   17 0xffffffff80200000 15ef860  kernel
 2    1 0xffffffff817f0000 23ab28   zfs.ko
 3    2 0xffffffff81a2b000 6630     opensolaris.ko
 4    1 0xffffffff81a32000 203d0    geom_eli.ko
 5    3 0xffffffff81a53000 34e80    crypto.ko
 6    1 0xffffffff81a89000 6d90     aesni.ko
```

When I mount the partition, it hesitates for a moment then:

```
# ntfs-3g /dev/da0s1 /mnt/usb
fuse: failed to open fuse device: No such file or directory
```

Nor can I load it with `mount`:


```
# mount -t ntfs /dev/da0s1 /mnt/usb
mount: /dev/da0s1: Operation not supported by device
```

And just for kicks and giggles, I tried mounting an ext2 file system from my other USB device listed above (da1), I know in the past you had to build ext2 support into the file system, but I do not believe this to be true anymore? 


```
mount -t ext2fs /dev/da1s1 /mnt/usb
mount: /dev/da1s1: Operation not supported by device
```

/usr/src/UPDATING doesn't show ntfs as an unsupported fs type as it did before. And building fusefs-kmod returns:


```
/usr/ports/sysutils/fusefs-kmod # make install clean
===>  fusefs-kmod-0.3.9.p1.20080208_11 Integrated into base.
*** Error code 1
```

FreeBSD has always been friendly mounting for me in the past, so I am not sure where to begin/continue my troubleshooting. Thanks in advance for any assistance.

Not sure if it is useful at all but:


```
#usbconfig
ugen4.1: <EHCI root HUB ATI> at usbus4, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=SAVE (0mA)
ugen3.1: <OHCI root HUB ATI> at usbus3, cfg=0 md=HOST spd=FULL (12Mbps) pwr=SAVE (0mA)
ugen2.1: <EHCI root HUB ATI> at usbus2, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=SAVE (0mA)
ugen1.1: <OHCI root HUB ATI> at usbus1, cfg=0 md=HOST spd=FULL (12Mbps) pwr=SAVE (0mA)
ugen0.1: <XHCI root HUB 0x1106> at usbus0, cfg=0 md=HOST spd=SUPER (5.0Gbps) pwr=SAVE (0mA)
ugen7.1: <EHCI root HUB ATI> at usbus7, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=SAVE (0mA)
ugen6.1: <OHCI root HUB ATI> at usbus6, cfg=0 md=HOST spd=FULL (12Mbps) pwr=SAVE (0mA)
ugen5.1: <OHCI root HUB ATI> at usbus5, cfg=0 md=HOST spd=FULL (12Mbps) pwr=SAVE (0mA)
ugen0.2: <USB2.0 Hub vendor 0x2109> at usbus0, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=SAVE (100mA)
ugen0.3: <USB Mouse vendor 0x05e3> at usbus0, cfg=0 md=HOST spd=LOW (1.5Mbps) pwr=ON (48mA)
ugen2.2: <SDDR-113 SanDisk Corp.> at usbus2, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON (250mA)
ugen0.4: <My Passport 0740 Western Digital> at usbus0, cfg=0 md=HOST spd=SUPER (5.0Gbps) pwr=ON (200mA)
```


----------



## Ph4nt0mBSD (Dec 24, 2013)

It's 
	
	



```
fuse_load=YES
```
 not "fusefs". Add that in the /boot/defaults/loader.conf.


----------



## SirDice (Dec 24, 2013)

Ph4nt0mBSD said:
			
		

> Add that in the /boot/defaults/loader.conf.


Bad advice. Never, EVER, modify /boot/defaults/loader.conf. ALWAYS put your changes in /boot/loader.conf.


----------



## Ph4nt0mBSD (Dec 24, 2013)

Oh ok ..

I always edit the /boot/defaults/loader.conf file never had any problems.. but ok.

Sure /boot/loader.conf


----------



## nickednamed (Dec 25, 2013)

Hope I'm not hijacking this thread, but 'm having a very similar problem. I haven't been able to mount my external NTFS USB hard disk since upgrading from FreeBSD 9.1 to 9.2. I really need to mount such devices for work, so I then upgraded to FreeBSD 10-RC2, hoping it would  help.

So here is what I'm currently running:
`uname -a`

```
FreeBSD nessie.666 10.0-RC2 FreeBSD 10.0-RC2 #0 r259404: Sun Dec 15 11:45:13 UTC 2013     root@snap.freebsd.org:/usr/obj/usr/src/sys/GENERIC  i386
```

I have configured fuse module to load at boot:
`cat /boot/loader.conf`

```
acpi_asus_load="YES"
hw.pci.do_power_nodriver=1
kern.hz=100
fuse_load="YES"
```

The device I'm currently trying to mount is listed as normal (a 500GB Western Digital USB disk):
`camcontrol devlist`

```
<ASUS-PHISON SSD TST2.04P>         at scbus1 target 0 lun 0 (pass0,ada0)
<Single Flash Reader 1.00>         at scbus2 target 0 lun 0 (da0,pass1)
<WD Elements 10A8 1042>            at scbus3 target 0 lun 0 (da1,pass2)
```

It has an NTFS file system on it:
`gpart show da1`

```
=>       63  976707521  da1  MBR  (466G)
         63       1985       - free -  (993K)
       2048  976705536    1  ntfs  (466G)
```

It is listed in /dev just like my other mountable devices:
`ls /dev | grep da`

```
da0
da0s1
da1
da1s1
```

The fuse module appears to have loaded normally:
`kldstat`

```
Id Refs Address    Size     Name
 1   12 0xc0400000 1276b50  kernel
 2    1 0xc1677000 5b94     acpi_asus.ko
 3    1 0xc167d000 fef4     fuse.ko
 4    1 0xc6756000 9000     i915.ko
 5    1 0xc675f000 15000    drm.ko
```

But I am still unable to mount it:
`mount -t ntfs /dev/da1s1 /media`

```
mount: /dev/da1s1: Operation not supported by device
```

I've read and re-read the manuals, as well as these forums, but no luck yet. What am I doing wrong?


----------



## wblock@ (Dec 25, 2013)

For a start, FUSE modules have their own commands, they do not use mount(8).  Also, you have not identified what is really seen at /dev/da1s1.  As root, use `file -s /dev/da1s1`.


----------



## nickednamed (Dec 25, 2013)

Thank you @wblock,

Here is the outpt of the command you mention:
`file -s /dev/da1s1`

```
/dev/da1s1: x86 boot sector, code offset 0x52, OEM-ID "NTFS    ", sectors/cluster 8, reserved sectors 0, Media descriptor 0xf8, heads 255, hidden sectors 2048, dos < 4.0 BootSector (0x80)
```

I'll be honest, I'm still deciphering the output, but I'm pretty sure it refers to the disk I'm trying to mount.

As for the commands the new fuse module uses, could you help me out? According to the FreeBSD Wiki, it is ntfs-3g. But it is nowhere to be found on my system, and as  I understand, installing it from ports won't work due to the fact it is now included in the base system.


----------



## wblock@ (Dec 25, 2013)

Okay, it does look like it really is an NTFS filesystem.

The stock FreeBSD mount(8) mounts a UFS filesystem.  But that's wrong here, hence the error.  So tell it that the desired filesystem is NTFS:
`# mount -t ntfs /dev/da1s1 /media`

There are two main parts to FUSE.  There is a kernel module, and there are userland modules for various filesystems.  With FreeBSD 10, the kernel module is part of the base.  The userland ports that call that module still have to be installed.  For NTFS, that would be sysutils/fusefs-ntfs.


----------



## nickednamed (Dec 25, 2013)

Thank you so much for your help and patience. If it wasn't for guys like you, I think I may have thrown my hands up in frustration and gone back to Windows a long time ago! So really, you've only got yourselves to blame for my incessant questions! 

So apparently, I misunderstood what the new FUSE implementation actually consisted of. I am compiling sysutils/fusefs-ntfs as we speak. I hope that will be the end of it. 

This being the Christmas holidays and all, I'm inspired by your (and others' in this forum) constant giving attitude. I doubt there is much I can do for you, or anyone else, when it comes to technical assistance so, in the spirit of giving, I've decided to make a modest donation to the FreeBSD foundation in your (collective) honor!

Thank you again, and of course, Merry Christmas!

EDIT: 
I still can't mount via:
`mount -t ntfs /dev/da1s1 /media`

```
mount: /dev/da1s1: Operation not supported by device
```

But I can mount via:
`ntfs-3g /dev/da1s1 /media`

So I can mount NTFS filesystems now and that is therefore "the end of it". Thanks again.


----------



## Ph4nt0mBSD (Dec 29, 2013)

Yeah, I was just going to mention `ntfs-3g /dev/drive /mount point`. That's how I do it and it is also rw so that's good too  Happy BSD'ing


----------



## balanga (Aug 26, 2014)

I just came across this post as I'm new to FreeBSD and am having exactly the same problem with a WD My Passport, except that I am unsuccessful in mounting the drive. I get:-


```
# ntfs-3g /dev/da0s1 /mnt/disk
ntfs-3g: Failed to access volume '/dev/da0s1': No such file or directory
```


----------



## SirDice (Aug 26, 2014)

Please post the output of `gpart show da0`.


----------



## balanga (Aug 26, 2014)

For some reason, after a reboot I was able to mount the NTFS partition on My Passport, so I'm grateful for this thread.

Having said that, I have experienced hangs whilst accessing the disk, so I'd like to know how to detach the disk without having to reboot.


----------



## drbytes (Oct 10, 2015)

Was just banging my head into my external drive repeatedly, as the fusefs-ntfs module mentions adding fusefs_enable="YES" to rc.conf, but nothing about the kernel module. Loading the kernel module as above, and then mounting with the `ntfs-3g` command made my life so much better tonight! Many kudos to you all, and if you're ever in Thunder Bay, ON, Canada, please let me know, drinks are on me!


----------

