aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--BUSYBOX.md5
-rw-r--r--NEWS.md16
-rw-r--r--init.d/localmount.in5
-rw-r--r--init.d/netmount.in8
4 files changed, 20 insertions, 14 deletions
diff --git a/BUSYBOX.md b/BUSYBOX.md
index 8d933567..db7ca512 100644
--- a/BUSYBOX.md
+++ b/BUSYBOX.md
@@ -12,6 +12,11 @@ configuration settings for best results with OpenRC.
CONFIG_START_STOP_DAEMON -- The start-stop-daemon applet is not compatible with
start-stop-daemon in OpenRC.
+CONFIG_MOUNT -- The mount applet does not support the -O [no]_netdev options to
+skip over or include network file systems when the -a option is present.
+
+CONFIG_UMOUNT -- The umount applet does not support the -O option along with -a.
+
CONFIG_SWAPONOFF -- The swapon applet does not support the -e option
or recognize the nofail option in fstab.
diff --git a/NEWS.md b/NEWS.md
index cb8eabab..819a340e 100644
--- a/NEWS.md
+++ b/NEWS.md
@@ -5,23 +5,15 @@ the information in this file is in reverse order.
## OpenRC-0.18
-The behaviour of localmount and netmount is changing. In the past, these
-services always started successfully. However, now they will fail if a
-file system they attempt to mount cannot be mounted.
-
-If you have file systems listed in fstab which should not be mounted at
+The behaviour of localmount and netmount in this version is changing. In
+the past, these services always started successfully. In this version,
+they will be able to fail if file systems they mount fail to mount. If
+you have file systems listed in fstab which should not be mounted at
boot time, make sure to add noauto to the mount options. If you have
file systems that you want to attempt to mount at boot time but failure
should be allowed, add nofail to the mount options for these file
systems in fstab.
-In this version, we are dropping the use of the -O switch for
-mount/umount -a. This is being dropped because it is util-linux
-specific and not compatible with busybox.
-
-This should not be a regression for Gentoo users, but I am publishing
-this here because it may be for others.
-
## OpenRC-0.14
The binfmt service, which registers misc binary formats with the Linux
diff --git a/init.d/localmount.in b/init.d/localmount.in
index f4bf15f6..29e73486 100644
--- a/init.d/localmount.in
+++ b/init.d/localmount.in
@@ -15,18 +15,19 @@ depend()
start()
{
# Mount local filesystems in /etc/fstab.
- local types="noproc" x= rc=
+ local types="noproc" x= no_netdev= rc=
for x in $net_fs_list $extra_net_fs_list; do
types="${types},no${x}"
done
if [ "$RC_UNAME" = Linux ]; then
+ no_netdev="-O no_netdev"
if mountinfo -q /usr; then
touch "$RC_SVCDIR"/usr_premounted
fi
fi
ebegin "Mounting local filesystems"
- mount -at "$types"
+ mount -at "$types" $no_netdev
eend $? "Some local filesystem failed to mount"
rc=$?
if [ "$RC_UNAME" != Linux ]; then
diff --git a/init.d/netmount.in b/init.d/netmount.in
index d9cf9c56..d1f3cffc 100644
--- a/init.d/netmount.in
+++ b/init.d/netmount.in
@@ -22,6 +22,10 @@ start()
ebegin "Mounting network filesystems"
mount -at $fs
rc=$?
+ if [ "$RC_UNAME" = Linux ]; then
+ mount -a -O _netdev
+ rc=$?
+ fi
ewend $rc "Could not mount all network filesystems"
if [ "$RC_UNAME" != Linux ]; then
rc=0
@@ -53,5 +57,9 @@ stop()
retval=$?
eoutdent
+ if [ "$RC_UNAME" = Linux ]; then
+ umount -a -O _netdev
+ retval=$?
+ fi
eend $retval "Failed to unmount network filesystems"
}