svn commit: r297016 - head/etc/autofs

Edward Tomasz Napierala trasz at FreeBSD.org
Fri Mar 18 09:54:11 UTC 2016


Author: trasz
Date: Fri Mar 18 09:54:09 2016
New Revision: 297016
URL: https://svnweb.freebsd.org/changeset/base/297016

Log:
  Add a special case for NTFS to the -media autofs(5) map.
  
  Submitted by:	lme@ (earlier version)
  MFC after:	1 month
  Sponsored by:	The FreeBSD Foundation

Modified:
  head/etc/autofs/special_media

Modified: head/etc/autofs/special_media
==============================================================================
--- head/etc/autofs/special_media	Fri Mar 18 09:17:54 2016	(r297015)
+++ head/etc/autofs/special_media	Fri Mar 18 09:54:09 2016	(r297016)
@@ -32,6 +32,26 @@ print_available() {
 }
 
 # Print a single map entry.
+print_map_entry() {
+	local _fstype _p
+
+	_fstype="$1"
+	_p="$2"
+
+	if [ "${_fstype}" = "ntfs" ]; then
+		if [ -f "/usr/local/bin/ntfs-3g" ]; then
+			echo "-mountprog=/usr/local/bin/ntfs-3g,fstype=${_fstype},nosuid	:/dev/${_p}" 
+		else
+			/usr/bin/logger -p info -t "special_media[$$]" \
+			    "Cannot mount ${_fstype} formatted device /dev/${_p}: Install sysutils/fusefs-ntfs first"
+			exit 1
+		fi
+	else
+		echo "-fstype=${_fstype},nosuid	:/dev/${_p}" 
+	fi
+}
+
+# Determine map entry contents for the given key and print out the entry.
 print_one() {
 	local _fstype _fstype_and_label _label _key _p
 
@@ -39,7 +59,7 @@ print_one() {
 
 	_fstype="$(fstyp "/dev/${_key}" 2> /dev/null)"
 	if [ $? -eq 0 ]; then
-		echo "-fstype=${_fstype},nosuid	:/dev/${_key}" 
+		print_map_entry "${_fstype}" "${_key}"
 		return
 	fi
 
@@ -67,7 +87,7 @@ print_one() {
 			continue
 		fi
 
-		echo "-fstype=${_fstype},nosuid	:/dev/${_p}" 
+		print_map_entry "${_fstype}" "${_p}"
 	done
 
 	# No matching device - don't print anything, autofs will handle it.


More information about the svn-src-all mailing list