7.2-stable upgrade changes disknames

Dimitry Andric dimitry at andric.com
Mon Jun 29 09:04:35 UTC 2009


On 2009-06-29 10:27, Aisaka Taiga wrote:
>> And I have to manually fix my /etc/fstab to what is factual correct.
>> And that was what my message was about:
>>     It can/will(??) bite a lot more users.
>> With similar remarks and/or questions.
> To be honest, I'm quite amused that it actually worked for you, because 
> if you use a dangerously dedicated disk you, basically, don't need a 
> partition table at all as the slice 'table' (bsdlabel) takes care of 
> everything. And if there's no partition table, there can be no adXs1a 
> boot device - even in 7.2.

It seems sysinstall creates DDD's with a strange bit of inconsistency.
If you install on e.g. /dev/ad0, it forces you to create a (bogus?)
slice /dev/ad0s1, the corresponding entries in /dev are also created,
and the newly installed system's fstab also uses ad0s1a, ad0s1b, etc.

However, the disklabel and the partition table will overlap.  In some
cases, I have seen *both* ad0s1a and ad0a existing at the same time in
/dev...

Sometime, during Marcel Moolenaars work on removing GEOM_MBR and
GEOM_BSD, and replacing them with GEOM_PART_MBR and GEOM_PART_BSD,
respectively, this arrangement got modified, so suddenly the 's1' part
wasn't recognized anymore, and you just got ad0a, ad0b, and so on.

In my case, simply doing "bsdlabel -B /dev/ad0s1", the label's boot
code would be overwritten with a default version, which contains a sort
of bogus partition table, having a fourth slice of 50000 sectors.

Apparently this leads to FreeBSD then recognizing the disk as not having
any slices anymore, so the disk will just be using ad0[a-z] from that
point forward.

You'll definitely need to fix your fstab and possibly /boot/loader.conf,
/etc/rc.conf and so on...

Note that sysinstall in -CURRENT can't even create a DDD anymore, since
it tries to newfs a first slice, which doesn't exist. :)


More information about the freebsd-current mailing list