[Bug 213549] /etc/rc remounts root readonly if /firstboot exists

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Sun Oct 16 23:41:20 UTC 2016


            Bug ID: 213549
           Summary: /etc/rc remounts root readonly if /firstboot exists
           Product: Base System
           Version: 11.0-STABLE
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Only Me
          Priority: ---
         Component: conf
          Assignee: freebsd-bugs at FreeBSD.org
          Reporter: mcdouga9 at egr.msu.edu

I have some custom system setup scripts that leverage "firstboot" support but I
discovered problems when trying them on FreeBSD 11 -stable and -release. The
short version is /etc/rc attempts to remount the / partition as readonly (ro)
at the end after it deletes /firstboot. I think this issue originated with:

Abbreviated code:
if [ -e ${firstboot_sentinel} ]; then
        [ ${root_rw_mount} = "yes" ] || mount -uw /
        chflags -R 0 ${firstboot_sentinel}
        rm -rf ${firstboot_sentinel}
        [ ${root_rw_mount} = "yes" ] || mount -ur /

On a stock FreeBSD 11 install, if you touch /firstboot and reboot, here are the
UFS: prints "mount: /dev/vtbd0s1a: Device busy" late during boot but no
apparent harm
ZFS: succeeds in remounting / as ro even if it was rw to start with

Depending on your system configuration you might notice the issue immediately
on the console, for example programs which need to write to / will start
complaining. You can login and run mount -v to verify. Other random things fail
such as recording your login in 'w' output. I do not use
${firstboot_sentinel}-reboot which might be why this was not discovered, as a
reboot makes the problem go away but I do not want to reboot.

Quick hack of a fix for me: comment out the last line containing "mount -ur /"
but this is not a proper fix.

You are receiving this mail because:
You are the assignee for the bug.

More information about the freebsd-bugs mailing list