Why fdisk can't open root disk with MBR for writing?

Julian H. Stacey jhs at berklix.com
Mon Sep 17 10:33:30 UTC 2012


Chris Rees wrote:
> On 16 September 2012 10:23, Julian H. Stacey <jhs at berklix.com> wrote:
> > This is a resend as Benjamin Kaduk <kaduk at mit.edu>
> > dropped the
> >         Yuri <yuri at rawbw.com>
> > from CC line, & Yuri was the original first poster in thread who
> > my patch would presumably have helped.
> >
> > Reference:
> >> From:         Benjamin Kaduk <kaduk at mit.edu>
> >> Date:         Sat, 15 Sep 2012 14:49:41 -0400 (EDT)
> >> Message-id:   <alpine.GSO.1.10.1209151448200.861 at multics.mit.edu>
> >
> > Benjamin Kaduk wrote:
> >> On Sat, 15 Sep 2012, Julian H. Stacey wrote:
> >>
> >> > I have been applying this diff to my man fdisk:
> >> >
> >> > http://berklix.com/~jhs/src/bsd/fixes/FreeBSD/src/gen/sbin/fdisk/
> >> >
> >> > *** 8.0-RELEASE/src/sbin/fdisk/fdisk.8      Sat Mar 14 22:32:16 2009
> >> > --- new-generic/src/sbin/fdisk/fdisk.8      Sat Mar 14 22:35:10 2009
> >> > ***************
> >> > *** 462,464 ****
> >> > --- 462,468 ----
> >> >  The
> >> >  .Xr bsdlabel 8
> >> >  command must be used for this.
> >> > + .Pp
> >> > + When running multi user, you cannot write unless you first run this:
> >> > + .br
> >> > + sysctl kern.geom.debugflags=16
> >> >
> >> > I never submitted it as a send-pr,
> >> > anyone think I should submit it to help save people ?
> >>
> >> We have had a long discussion about kern.geom.debugflags starting here:
> >> http://lists.freebsd.org/pipermail/freebsd-current/2011-October/028090.html
> >> My understanding from that discussion is that your patch should not be
> >> accepted.
> >
> > Got to travel now, will read that thread later,
> >
> > A shame if we would leave fdisk crippled undocumented, when so easy
> > to doc. the solution. Fdisk is known across many OSs Unix & beyond,
> > our BSD tools may be better nicer, but fdisk it what many will first
> > reach for,
> >  a shame not to help newer people & visitors used to fdisk.
> > We inside FreeBSD crippled fdisk by adding these flags. Outsiders
> > wont expect the weirdness & get impression FreeBSD has a bug.
> 
> I think you have a point, but at the moment fdisk really doesn't work
> properly at all; I find so many people complaining on IRC about "Why
> doesn't fdisk work?"

Long ago I used to have a lot of failures from fdisk, till some kind soul
on a mail list rescued me with
	sysctl kern.geom.debugflags=16
One can but speculate how many others could be saved if we add a note to man 
fdisk (or as below per Chris, better fix the source).
We should also add to 'man fdisk' SEE ALSO gpart(1)
Adding both would rescue maximal people & point the way ahead.


> To be honest, I'd be happy with replacing fdisk with a huge warning
> "USE GPART!!"; fdisk isn't really standard anyway.

For visitors from other Unixes, they'll look for fdisk.
(I've never bothered moving to geom / gpart myself, fdisk works fine for me
 with debugflags=16)


> The alternative of course is to fix fdisk...  *properly*.

Yes, better than adding to manual to document the bug, would be to fix src/
    (IMO should have been done way back by those who introduced the
    bit in kern.geom.debugflags that broke fdisk).  I'd be tempted
    to do it myself but must travel soon.  Maybe someone fancies
    hacking the src/ ?

Till src is patched, a tiny patch to manual would serve as a
better than nothing rescue / reminder to rescue those stuck.


>From Lokadamus <lokadamus at gmx.de>

> FreeBSD 9.1RC1 have a live-cd option and with this, fdisk work fine.

Ah yes, that reminds me Ive also seen Fdisk work OK single user.
(Single user awkward though when running a server or ssh/rlogin to a
headless host)

Cheers,
Julian
-- 
Julian Stacey, BSD Unix Linux C Sys Eng Consultant, Munich http://berklix.com
 Reply below not above, like a play script.  Indent old text with "> ".
 Send plain text. Not: HTML, multipart/alternative, base64, quoted-printable.


More information about the freebsd-hackers mailing list