Date: Mon, 25 Jan 2016 16:11:14 +0100 From: Edward Tomasz =?utf-8?Q?Napiera=C5=82a?= <trasz@freebsd.org> To: Kevin Oberman <rkoberman@gmail.com> Cc: FreeBSD Stable ML <stable@freebsd.org> Subject: Re: Auto-mounting USB NTFS formatted devices on FreeBSD 10.2 and HEAD Message-ID: <20160125151114.GA2516@brick.home> In-Reply-To: <CAN6yY1vS9e9NKQm0ezQVtcHxuSZjCz7XyuK2XeRGU8xneJ0=KQ@mail.gmail.com> References: <CAN6yY1vS9e9NKQm0ezQVtcHxuSZjCz7XyuK2XeRGU8xneJ0=KQ@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On 0124T1650, Kevin Oberman wrote:
> Since the removal of NTFS support, it is unclear how to get USB drives
> formatted as NTFS (or ExFAT) to automatically mount. Prior to FreeBSD 10 it
> was possible to replace /sbin/mount_ntfs with a script that would generate
> appropriate options and exec /usr/local/sbin/ntfs-3g and let HAL fire up
> mount_ntfs, but that no longer works as mount_ntfs is no longer used and
> mount(8) no longer treats '-t ntfs' as special.
>
> It would appear that automount(8) would be the right magic, but it's not
> obvious to me how to configure it to recognize that an NTFS device has been
> connected to a USB port (as opposed to msdosfs) and to use ntfs-3g to do
> the actual mount. I assume that the same issue exists for ExFAT.
>
> Does anyone have an idea of what magic is required in the auto_master or
> elsewhere to make this work in conjunction with devd? I'd really like to
> avid using hald, if possible.
Try to apply the following diff in /etc/autofs/:
Index: special_media
===================================================================
--- special_media (revision 294670)
+++ special_media (working copy)
@@ -35,7 +35,11 @@ print_one() {
_fstype="$(fstyp "/dev/${_key}" 2> /dev/null)"
if [ $? -eq 0 ]; then
- echo "-fstype=${_fstype},nosuid :/dev/${_key}"
+ if [ ${_fstype} = "ntfs" ]; then
+ echo "-fstype=${_fstype},nosuid,mountprog=/usr/local/bin/ntfs-3g :/dev/${_key}"
+ else
+ echo "-fstype=${_fstype},nosuid :/dev/${_key}"
+ fi
return
fi
@@ -59,7 +63,11 @@ print_one() {
continue
fi
- echo "-fstype=${_fstype},nosuid :/dev/${_p}"
+ if [ ${_fstype} = "ntfs" ]; then
+ echo "-fstype=${_fstype},nosuid,mountprog=/usr/local/bin/ntfs-3g :/dev/${_p}"
+ else
+ echo "-fstype=${_fstype},nosuid :/dev/${_p}"
+ fi
done
# No matching device - don't print anything, autofs will handle it.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20160125151114.GA2516>
