Date: Fri, 02 Dec 2005 11:48:42 -0800 From: Maksim Yevmenkin <maksim.yevmenkin@savvis.net> To: John Baldwin <jhb@freebsd.org>, rodrigc@freebsd.org Cc: freebsd-current@freebsd.org, Robert Watson <rwatson@freebsd.org>, David Xu <davidxu@freebsd.org> Subject: Re: After crash, / comes up mounted read-only, but in multiuser; mfs /tmp? Message-ID: <4390A51A.5020005@savvis.net> In-Reply-To: <200512021319.54184.jhb@freebsd.org> References: <20051202103751.T83839@fledge.watson.org> <200512020840.58395.jhb@freebsd.org> <439071AF.2050301@savvis.net> <200512021319.54184.jhb@freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
John Baldwin wrote: > On Friday 02 December 2005 11:09 am, Maksim Yevmenkin wrote: > >>John Baldwin wrote: >> >>>On Friday 02 December 2005 08:33 am, David Xu wrote: >>> >>>>Robert Watson wrote: >>>> >>>>>While testing the new DRM update (went badly :-), I crashed my system >>>>>and had to power cycle it. When it came back up, not surprisingly, >>>>>the file systems weren't clean. When I reached a login prompt, I >>>>>logged in to modify /etc/rc.conf, and to my surprise, was told that >>>>>/etc/rc.conf wasn't writable. Turns out it was because / was mounted >>>>>read-only: >>>>> >>>>>... >>>>> >>>>>/dev/ad0s3a on / (ufs, local, read-only) >>>>>devfs on /dev (devfs, local) >>>>>/dev/ad0s3e on /usr (ufs, local, soft-updates) >>>>>/dev/ad0s3d on /var (ufs, local, soft-updates) >>>>>/dev/md0 on /tmp (ufs, local) >>>>> >>>>>The rc scripts helpfully mounted an MFS /tmp for me, which while >>>>>friendly, succeeded in masking the problem and allowing the system to >>>>>come up in a rather undesirable state (from my perspective). So it >>>>>sounds like maybe / wasn't remounted properly, and then the scripts >>>>>were too helpful thinking it was a diskless system. >>>> >>>>I have seen this for some days, one machine I even have to reinstall >>>>the system because mount -u / does not work. :-( >>> >>>I've seen reports that mount -u -w / works whereas mount -u -o rw / >>>doesn't, so you might be able to mount -u -w / in single user mode after >>>running fsck as a way to recover. Either that or boot single user, run >>>fsck, and then reboot before going into multiuser. >> >>this is all very nice as workaround, but does somebody actually working >>on the _real_ problem? >> >>it would be nice to have something in UPDATING saying this is broken >>now. all i can find in UPDATING is >> >>20051129: >> The nodev mount option was deprecated in RELENG_6 (where it >> was a no-op), and is now unsupported. If you have nodev or dev listed >> in /etc/fstab, remove it, otherwise it will result in a mount error. >> >>sure that is not the problem, is it? > > No, it's probably due to all the nmount changes in HEAD recently that have > broken various mount options for other FS's such as smbfs and msdosfs as > well. Probably should bug crodig@ or just dig into the code to see how -o rw > used to be handled and how it is not handled now. > how about something quick and dirty, like so beetle# pwd /usr/src/sbin/mount beetle# diff -u mount.c.orig mount.c --- mount.c.orig Fri Dec 2 11:45:22 2005 +++ mount.c Fri Dec 2 11:41:53 2005 @@ -644,7 +644,10 @@ *p = '\0'; argv[argc++] = p+1; } - } else if (strcmp(p, "rw") != 0) { + } else if (strcmp(p, "rw") == 0) { + argv[argc++] = strdup("-o"); + argv[argc++] = strdup("noro"); + } else { argv[argc++] = strdup("-o"); argv[argc++] = p; } %% thanks, max
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4390A51A.5020005>