Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 4 Aug 2003 16:32:22 -0400
From:      David Gilbert <dgilbert@dclg.ca>
To:        Dmitry Morozovsky <woozle@woozle.net>
Cc:        joerg@FreeBSD.org
Subject:   Re: bootstrapping vinum root
Message-ID:  <16174.49878.294049.177343@canoe.velocet.net>
In-Reply-To: <20030804160017.E12950@woozle.rinet.ru>
References:  <20030804140437.W12950@woozle.rinet.ru> <20030804105004.GM95375@wantadilla.lemis.com> <20030804160017.E12950@woozle.rinet.ru>

next in thread | previous in thread | raw e-mail | index | archive | help
>>>>> "Dmitry" == Dmitry Morozovsky <woozle@woozle.net> writes:

Dmitry> On Mon, 4 Aug 2003, Greg 'groggy' Lehey wrote:
GgL> > I tried many different ways to setup system with vinum root
GgL> (the only

Dmitry> [snip]

GgL> I haven't done anything in this area on release 4; as you say,
GgL> J?rg did that.  However, there's a problem with overwritten
GgL> bootstraps which will probably bite you under 4.x as well.  Try
GgL> changing the 265 sectors to 281 and see if that fixes the
GgL> problem.

Dmitry> Wow, Greg, thanks a lot, that was exactly the problem. Moving
Dmitry> vinum partition from offset 0 to offset 16 followed by
Dmitry> `disklabel -B' did the trick.

I just completed an installation of 5.1-CURRENT on a machine with 4
SCSI drives and (now) a vinum booting root.  In brief, I:

- Booted from a 5.1-RELEASE fixit CD
- fdisk/disklabel drives
  - It's important to note that vi isn't on your path properly often
    on fixit disks.  EDITOR=/dist/usr/bin/vi will help.
  - I've been leaving 64 sectors free.  Someone here said 265.  Short
    answer is that you have to make your partition not intersect the
    boot blocks.
  - Example disklabel:

  a:   524288      329    4.2BSD     1024  8192    99 
  c: 143540712        0    unused        0     0
  g: 143540648       64     vinum                    

- vinum create
  - Remmber $EDITOR above
  - creaet root as 4 concat plexes (4 drives) of 256M
- newfs /dev/vinum/root
- mount /dev/vinum/root
- dhclient fxp0
- ftp base.?? from FreeBSD.org (not on fixit CD)
- mtree -U <mtree.base
- cat base.?? | tar -xvzf -
- rm base.*
- make a partition as indicated in the guide
- fstab entry for /dev/vinum/root
- reboot (from new root)

- vinum create /usr and /var and swap
- newfs /usr and /var
- mv /usr to /usr-old and /var to /var-old
- mount /usr and /var
- tar copy /usr-old and /var-old to them. (LD_LIBRARY_PATH is your
  friend) 
- make fstab entries
- /usr/sbin/sysinstall other packages
- cvsup
- make buildworld/buildkernel/installkernel/installworld
- reboot

It's a fairly involved process, but it works.  The most non-obvious
part was caught by the origional poster ... that while the filesystem
leaves the first few blocks alone, vinum does not.

How many blocks are needed for MBR + bootable stuff?

How tricky would it be to make sysinstall do this?

How come distributions aren't loaded onto ISO-2?  To my mind the most
useful CD would be one that combined the 'mini' install with the fixit
disk.

Dave.

-- 
============================================================================
|David Gilbert, Independent Contractor.       | Two things can only be     |
|Mail:       dave@daveg.ca                    |  equal if and only if they |
|http://daveg.ca                              |   are precisely opposite.  |
=========================================================GLO================



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?16174.49878.294049.177343>