Add two new rc.conf options: tmpmfs_flags and varmfs_flags.

These can be used to pass extra options to the mdmfs(8) utility,
to customize the finer details of the md file system creation
(i.e. to turn on/off softupdates, to specify a default owner for md
filesystem, etc).

Use these two new flags to mount tmpmfs and varmfs without
softupdates, since it doesn't make much sense to use SU on
malloc-backed file systems.

Reviewed by:	mtm
Inspired by:	J. D. Bronson, jbronson at wixb dot com
This commit is contained in:
Giorgos Keramidas 2004-11-09 10:03:17 +00:00
parent 5e7b233055
commit 8cfaa2f1f1
5 changed files with 41 additions and 7 deletions

View File

@ -40,8 +40,10 @@ pccard_ether_delay="5" # Delay before trying to start dhclient in pccard_ether
removable_interfaces="" # Removable network interfaces for /etc/pccard_ether.
tmpmfs="AUTO" # Set to YES to always create an mfs /tmp, NO to never
tmpsize="20m" # Size of mfs /tmp if created
tmpmfs_flags="-S -o noexec,nosuid,nodev" # Extra mdmfs options for the mfs /tmp
varmfs="AUTO" # Set to YES to always create an mfs /var, NO to never
varsize="32m" # Size of mfs /var if created
varmfs_flags="-S" # Extra mount options for the mfs /var
populate_var="AUTO" # Set to YES to always (re)populate /var, NO to never
local_startup="/usr/local/etc/rc.d /usr/X11R6/etc/rc.d" # startup script dirs.
script_name_sep=" " # Change if your startup scripts' names contain spaces

View File

@ -42,7 +42,7 @@ load_rc_config $name
#
case "${tmpmfs}" in
[Yy][Ee][Ss])
mount_md ${tmpsize} /tmp
mount_md ${tmpsize} /tmp "${tmpmfs_flags}"
chmod 01777 /tmp
;;
[Nn][Oo])
@ -56,7 +56,7 @@ case "${tmpmfs}" in
echo "dropping into shell, ^D to continue anyway."
/bin/sh
else
mount_md ${tmpsize} /tmp
mount_md ${tmpsize} /tmp "${tmpmfs_flags}"
chmod 01777 /tmp
fi
fi

View File

@ -61,7 +61,7 @@ _populate_var()
#
case "${varmfs}" in
[Yy][Ee][Ss])
mount_md ${varsize} /var
mount_md ${varsize} /var "${varmfs_flags}"
;;
[Nn][Oo])
;;
@ -69,7 +69,7 @@ case "${varmfs}" in
if (/bin/mkdir -p /var/.diskless 2> /dev/null); then
rmdir /var/.diskless
else
mount_md ${varsize} /var
mount_md ${varsize} /var "${varmfs_flags}"
fi
esac

View File

@ -1289,12 +1289,12 @@ devfs_mount_jail()
# as close as possible between 5-current and 4-stable.
# $1 = size
# $2 = mount point
# $3 = (optional) bytes-per-inode
# $3 = (optional) extra mdmfs flags
mount_md() {
if [ -n "$3" ]; then
bpi="-i $3"
flags="$3"
fi
/sbin/mdmfs $bpi -s $1 -M md $2
/sbin/mdmfs $flags -s $1 -M md $2
}
fi

View File

@ -240,6 +240,22 @@ is not writable.
Controls the size of a created
.Pa /tmp
memory file system.
.It Va tmpmfs_flags
Extra options passed to the
.Xr mdmfs 8
utility when the memory file system for
.Pa /tmp
is created.
The default is
.Dq Li -S -o noexec,nosuid,nodev ,
which inhibits the use of softupdates on
.Pa /tmp
to waste as little space as possible and mounts the memory file system
.Dq Li noexec,nosuid,nodev .
See
.Xr mdmfs 8
for other options you can use in
.Li tmpmfs_flags .
.It Va varmfs
Controls the creation of a
.Pa /var
@ -255,6 +271,21 @@ is not writable.
Controls the size of a created
.Pa /var
memory file system.
.It Va varmfs_flags
Extra options passed to the
.Xr mdmfs 8
utility when the memory file system for
.Pa /var
is created.
The default is
.Dq Li -S ,
which inhibits the use of softupdates on
.Pa /var
to waste as little space as possible.
See
.Xr mdmfs 8
for other options you can use in
.Li varmfs_flags .
.It Va populate_var
Controls the automatic population of the
.Pa /var
@ -3109,6 +3140,7 @@ device and the mount point will be changed.
.Xr kldxref 8 ,
.Xr lpd 8 ,
.Xr mdconfig 8 ,
.Xr mdmfs 8 ,
.Xr mountd 8 ,
.Xr moused 8 ,
.Xr mrouted 8 ,