Other How to mount "ntfs" external (Samsung) ssd on freebsd

I havent been able to figure out if I should be embarassed that I can't do this.
This should be a standard operation, and yet apparently I can't do it.

And.. maybe this should be in "external devices"?

[This is all on a Dell Latitude E7450, Using.. the latest version of FreeBSD, downloaded and installed withing the past, say, 2 weeks. 14.2-Release, I think.]

Let's begin.

$ ls /dev/da*
/dev/da0 /dev/da0s1 /dev/da1 /dev/da1p1

In more detail:

$ gpart show /dev/da0
=> 63 1953525105 da0 MBR (932G)
63 1985 - free - (993K)
2048 1953520065 1 ntfs (932G)
1953522113 3055 - free - (1.5M)

And..

$ fdisk /dev/da0
WARNING: fdisk is deprecated and is not available in FreeBSD 15 or later.
Please use gpart instead.

******* Working on device /dev/da0 *******
parameters extracted from in-core disklabel are:
cylinders=121601 heads=255 sectors/track=63 (16065 blks/cyl)

Figures below won't work with BIOS for partitions not in cyl 1
parameters to be used for BIOS calculations are:
cylinders=121601 heads=255 sectors/track=63 (16065 blks/cyl)

Media sector size is 512
Warning: BIOS sector numbering starts with sector 1
Information from DOS bootblock is:
The data for partition 1 is:
sysid 7 (0x07),(NTFS, OS/2 HPFS, QNX-2 (16 bit) or Advanced UNIX)
start 2048, size 1953520065 (953867 Meg), flag 0
beg: cyl 0/ head 32/ sector 33;
end: cyl 1023/ head 254/ sector 63
The data for partition 2 is:
<UNUSED>
The data for partition 3 is:
<UNUSED>
The data for partition 4 is:
<UNUSED>

So, it's ntfs, right?

From the Handbook, section 23.3.3:

[At this, point, I should not have to google this. That is one of the "features" of BSD, especially FreeBSD, well-organized documentation. Even the forums, I should not have to search them. Unfortunately, I still lack the confidence to submit this as a Problem Report.]

# pkg install ntfs
Updating FreeBSD repository catalogue...
FreeBSD repository is up to date.
All repositories are up to date.
pkg: No packages available to install matching 'ntfs' have been found in the repositories
# kldload fusefs
kldload: can't load fusefs: module already loaded or in kernel
# ntfs-3g /dev/da0s1
su: ntfs-3g: not found
I read somewhere that a funny thing happens that some packaes aren't run using their name. I can't find that post now. It might have been GhostBSD.
# ntfs_3g /dev/da0s1
su: ntfs_3g: not found
..Maybe it's just not installed..
# pkg install ntfs-3g
Updating FreeBSD repository catalogue...
FreeBSD repository is up to date.
All repositories are up to date.
pkg: No packages available to install matching 'ntfs-3g' have been found in the repositories
# pkg install ntfs_3g
Updating FreeBSD repository catalogue...
FreeBSD repository is up to date.
All repositories are up to date.
pkg: No packages available to install matching 'ntfs_3g' have been found in the repositories

I read somewhere that "ntfs" file systems sometimes aren't actually ntfs at all, they are exFAT or something else. If this is true, it should also be documented in the handbook, under "ntfs". Or so it seems to me.

# pkg install exfat
Updating FreeBSD repository catalogue...
FreeBSD repository is up to date.
All repositories are up to date.
pkg: No packages available to install matching 'exfat' have been found in the repositories
# kldload fusefs
kldload: can't load fusefs: module already loaded or in kernel
# mount.exfat /dev/da0s1 /mnt/samsung
su: mount.exfat: not found

I should maybe specify that these particular results are obtained on the xterm in cwm, the calm window manager. However, I have also tried them, or some of them, from outside cwm. Ie, quit cwm, get back to the "black-screen with words and prompt".

Just to check.. (Section 23.2.1):
# mount -t ext2fs /dev/da0s1 /mnt/samsung
mount: /dev/da0s1: Invalid argument
And.. (Section 23.3.1):
# mount -t msdosfs /dev/da0s1 /mnt/samsung
mount_msdosfs: /dev/da0s1: Invalid argument

-----------------------------------------------------------------

To add more attempts:

This thread..

# pkg install fusefs-ntfs
Updating FreeBSD repository catalogue...
FreeBSD repository is up to date.
All repositories are up to date.
The following 4 package(s) will be affected (of 0 checked):

New packages to be INSTALLED:
e2fsprogs-libuuid: 1.47.2
fusefs-libs: 2.9.9_2
fusefs-ntfs: 2022.10.3_1
libublio: 20070103_3

Number of packages to be installed: 4

The process will require 3 MiB more space.
778 KiB to be downloaded.

Proceed with this action? [y/N]: y
[1/4] Fetching e2fsprogs-libuuid-1.47.2.pkg: 100% 35 KiB 36.3kB/s 00:01
[2/4] Fetching libublio-20070103_3.pkg: 100% 14 KiB 14.2kB/s 00:01
[3/4] Fetching fusefs-libs-2.9.9_2.pkg: 100% 151 KiB 154.6kB/s 00:01
[4/4] Fetching fusefs-ntfs-2022.10.3_1.pkg: 100% 578 KiB 591.6kB/s 00:01
Checking integrity... done (0 conflicting)
[1/4] Installing e2fsprogs-libuuid-1.47.2...
[1/4] Extracting e2fsprogs-libuuid-1.47.2: 100%
[2/4] Installing fusefs-libs-2.9.9_2...
[2/4] Extracting fusefs-libs-2.9.9_2: 100%
[3/4] Installing libublio-20070103_3...
[3/4] Extracting libublio-20070103_3: 100%
[4/4] Installing fusefs-ntfs-2022.10.3_1...
[4/4] Extracting fusefs-ntfs-2022.10.3_1: 100%
=====
Message from fusefs-libs-2.9.9_2:

--
Install the FUSE kernel module (kldload fusefs) to use this port.
=====
Message from fusefs-ntfs-2022.10.3_1:

--
NTFS-3G has been installed. It requires fusefs(5) support to operate,
so issue the ``kldload fusefs'' command or ``sysrc kld_list+=fusefs''
to make it load automatically when the system starts.

For further information, implementation details, and known issues see
the FreeBSD README (/usr/local/share/doc/ntfs-3g/README.FreeBSD) in
addition to the official README (contains some Linux-specific parts).
# kldload fusefs
kldload: can't load fusefs: module already loaded or in kernel
# kldload fuse
kldload: can't load fuse: No such file or directory
Continuing..
# ntfs_3g /dev/da0s1
su: ntfs_3g: not found
# ntfs-3g /dev/da0s1
ntfs-3g: No mountpoint is specified.

ntfs-3g 2022.10.3 external FUSE 29 - Third Generation NTFS Driver
Configuration type 1, XATTRS are off, POSIX ACLS are off

Copyright (C) 2005-2007 Yura Pakhuchiy
Copyright (C) 2006-2009 Szabolcs Szakacsits
Copyright (C) 2007-2022 Jean-Pierre Andre
Copyright (C) 2009-2020 Erik Larsson

Usage: ntfs-3g [-o option[,...]] <device|image_file> <mount_point>

Options: ro (read-only mount), windows_names, uid=, gid=,
umask=, fmask=, dmask=, streams_interface=.
Please see the details in the manual (type: man ntfs-3g).

Example: ntfs-3g /dev/sda1 /mnt/windows

Plugin path: /usr/local/lib/ntfs-3g

News, support and information: https://github.com/tuxera/ntfs-3g/
# ntfs-3g /dev/da0s1 /mnt/samsung
NTFS signature is missing.
Failed to mount '/dev/da0s1': Invalid argument
The device '/dev/da0s1' doesn't seem to have a valid NTFS.
Maybe the wrong device is used? Or the whole disk instead of a
partition (e.g. /dev/sda, not /dev/sda1)? Or the other way around?
# ntfs-3g /dev/da0 /mnt/samsung
NTFS signature is missing.
Failed to mount '/dev/da0': Invalid argument
The device '/dev/da0' doesn't seem to have a valid NTFS.
Maybe the wrong device is used? Or the whole disk instead of a
partition (e.g. /dev/sda, not /dev/sda1)? Or the other way around?
 
If pkg install doesn't find something, you can use pkg search to locate names of matching package(s). In this case installing fusefs-ntfs.
 
If pkg install doesn't find something, you can use pkg search to locate names of matching package(s). In this case installing fusefs-ntfs.
Thank you for reminding me that sometimes, a pkg is not available on it's own, but as part of another larger group of packages.

In this case however, you will see above, in that rather extensive post, that
# pkg install fusefs-ntfs
-did- in fact work. And then the mount still failed.

So, you seem to be confirming that fusefs-ntfs is the correct program to be using in this case. If that is true, then the handbook should be updated, ie, I should submit a problem report, preferably once I succeed in getting it mounted and so know what the procedure is supposed to be so that I can submit that along with the report.
 
One thing to note, the partition type doesn't have to be the same as the filesystem. You typically keep them the same but there's nothing enforcing it, so it's perfectly fine to format an ntfs partition with ext2 or UFS.

What does file -s /dev/da0s1 tell you?
 
That's odd, boot sector should be at the beginning of da0, not the partition. That's probably also the reason why it's not recognized as NTFS. Maybe try mounting it as msdosfs(5) (which is FAT12/16/32, not exFAT)?
 
What kind of data should be on that device? Also leading into: have you managed to access it using other operating systems already yet?

Because if not then this could also be a wild goose chase.. I've seen it before: seeing partitions on devices that somehow seemed to make sense, but in the end didn't at all because the device was used by particular hardware which somewhat "abused" the whole thing by using it in an unconventinal way.
 
What kind of data should be on that device? Also leading into: have you managed to access it using other operating systems already yet?

Because if not then this could also be a wild goose chase.. I've seen it before: seeing partitions on devices that somehow seemed to make sense, but in the end didn't at all because the device was used by particular hardware which somewhat "abused" the whole thing by using it in an unconventinal way.

This is a drive that has had things saved to it, within the past year, by public windows computers, Ubuntu, and technically most recently, GhotBSD. This is my "long term cold storage", 1T, mostly full. I have it all backed up, currently, on one other external SSD. For the sake of this thread, I just plugged it back into ubuntu, and it showed up straight-away, with a salute, ready for duty :) I'm trying to transfer everything to spinning rust, to have multiple backups on different media. On GhostBSD I tried with openrsync (I assumed that the "openbsd version" would be better), which I then learned is officially not ready for prime-time, so now the goal is to repeat the procedure with the real thing, rsync.

I just re-tried "the whole thing" with the other ssd that never got touched by openrsync. From what I can tell, the results are the same.

..and.. it's a grand mix of data. Basically everything I've managed to save over the years.
 
I have an old image of WinXP. I created an memdisk of it and did file -s and I get this:

dev/md1s1: DOS/MBR boot sector, code offset 0x52+2, OEM-ID "NTFS ", sectors/cluster 8, Media descriptor 0xf8, sectors/track 63, heads 255, hidden sectors 63, dos < 4.0 BootSector (0x80), FAT (1Y bit by descriptor); NTFS, sectors/track 63, sectors 16755731, $MFT start cluster 4, $MFTMirror start cluster 1047233, bytes/RecordSegment 2^(-1*246), clusters/index block 1, serial number xxxxxxxxxx; contains bootstrap NTLDR
I tried the same thing on an existing ssd containing windows 10 or something (I never used it!):
/dev/ntfs/Windows: DOS/MBR boot sector, code offset 0x52+2, OEM-ID "NTFS ", sectors/cluster 8, Media descriptor 0xf8, sectors/track 63, heads 255, hidden sectors 239616, dos < 4.0 BootSector (0x80), FAT (1Y bit by descriptor); NTFS, sectors/track 63, sectors 498034687, $MFT start cluster 786432, $MFTMirror start cluster 2, bytes/RecordSegment 2^(-1*246), clusters/index block 1, serial number xxxxxxxxxxxxx; contains bootstrap BOOTMGR
Both can be mounted.

This is not what your file -s reports. Since you can mount this on a linux system, may be you should create a bug report?
 
Back
Top