bin/161926: bsdinstall(8): disk layout trouble

Nathan Whitehorn nwhitehorn at freebsd.org
Sun Oct 23 15:43:07 UTC 2011


> Description
> I tried to install a machine for use with src/tools/sysbuild, and ran
> into a number of weird issues.
>
> Here is a blow by blow account:
>
> ada0 zeroed before boot
> boot dvd
> Choose "Install"
>
>
> Keymap Selection -> No
> "non-default key mapping" ???
> What kind of question is that ?
>

Can you suggest an alternate wording for this? This was a request from 
PR bin/160913.

> Guided disk
> Hmm, maybe I should use the manual option,
> lets see, where is the "back" button ?
> Ohh, there are *no* "back" buttons *anywhere* ?
>

jilles@ was going to add these at one point, so I dropped the issue. I 
don't know what happened with that -- perhaps it is worth revisiting.

> Partition
> ada0 Modify
> "Invalid argument. arg0 'ada0'
> MBR
>

Can you provide some more detail on how you got here? This is a geom 
bug, and it would be nice to track it down.

> Create
> 10GB
>
> Create
> 10GB
>
> Create
> 10GB
>
> Create
> default size
>
> Active partition is the last one created ?
> There is no place I can see it ?
> There is no place I can change it ?
>

Active partition is the last bootable (e.g. freebsd) partition you 
created, yes. It's difficult to make a UI for setting active partitions 
since only MBR really has that concept, and this is mostly geared to 
supporting GPT (and VTOC8, APM, etc). libdialog also (irritatingly) 
doesn't support mixes of checkboxes and form fields. As usual, 
suggestions are appreciated.

> ada0s1 Modify
> "Invalid argument. arg0 'ada0s1'
>

Again, you've run into a GEOM bug. More details, please.

> BSD
> Create (ada0s1a)
> freebsd, full size, /
>
> Finish
>
> Enter shell in new system
>
> gpart set -a active -i 1 ada0
> Fix the active partition
>
> sysctl kern.geom.debugflags=16
> gmirror label root ada0
>
> Fix /etc/fstab ?
> There is no /etc/fstab ?
> Create /etc/fstab: /dev/mirror/roots1a / ufs rw 1 1
> boot0cfg -B /dev/ada0
>

No, there is no fstab. There is no rc.conf either. They are both copied 
later, at the very end. This has to do with how the rc.conf editing 
tools work, so that you can get a second chance here. The first can be 
fixed fairly easily -- the second is much harder. I'm hoping to have 
some time to fix both of these soon. There are two basic ways to fix this:

1. Move "Shell" out of that screen, into the "Installation finished. 
What would you like to do now?" screen, when the install is actually 
complete. This is the easiest solution by far, and maybe the best.
2. Pre-copy fstab, and try to diff a user-edited rc.conf against the 
generated one, then reapply any user patches at the end. This seems 
fraught with peril.

> reboot
>
> Comes up
> /etc/fstab now contains ada0s1a ?
>

It gets replaced (see above).

> fix /etc/fstab
> add geom_mirror_load="YES" to /boot/loader.conf
> reboot
>
> Comes up
>
> How-To-Repeat
>
> Per above.
>
> I tried once before with a disk which contained a Ubuntu installation,
> there I ended up with partition 2 having size of "-37GB" on a 40GB
> drive.
>

Again, can you provide more details on how you got there? You seem to 
have found a *lot* of bugs in gpart.

> Fix
>
> At the very least, show people what's going on.
> And for goodness sake, add "Back" buttons, OK ?

Back buttons are kind of hard in shell scripts, but I'm on it :P

> You really don't want me to write sysinstall2, right ? :-)

:P
-Nathan


More information about the freebsd-bugs mailing list