diff --git a/BUSYBOX.md b/BUSYBOX.md index db7ca512..8d933567 100644 --- a/BUSYBOX.md +++ b/BUSYBOX.md @@ -12,11 +12,6 @@ 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 69fab7ff..cb8eabab 100644 --- a/NEWS.md +++ b/NEWS.md @@ -3,17 +3,25 @@ This file will contain a list of notable changes for each release. Note the information in this file is in reverse order. -## OpenRC-x.xx +## OpenRC-0.18 -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 +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 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 67e43035..9d05ebcf 100644 --- a/init.d/localmount.in +++ b/init.d/localmount.in @@ -15,19 +15,18 @@ depend() start() { # Mount local filesystems in /etc/fstab. - local types="noproc" x= no_netdev= + local types="noproc" x= 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" $no_netdev + mount -at "$types" eend $? "Some local filesystem failed to mount" } diff --git a/init.d/netmount.in b/init.d/netmount.in index 2ce5c2a9..99db1858 100644 --- a/init.d/netmount.in +++ b/init.d/netmount.in @@ -22,10 +22,6 @@ 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" } @@ -53,9 +49,5 @@ stop() retval=$? eoutdent - if [ "$RC_UNAME" = Linux ]; then - umount -a -O _netdev - retval=$? - fi eend $retval "Failed to unmount network filesystems" }