5.x to 6.x or 7.x with 64MB /
ronald-freebsd8 at klop.yi.org
Mon Aug 4 19:42:14 UTC 2008
On Mon, 04 Aug 2008 18:48:03 +0200, Nick Barnes <Nick.Barnes at pobox.com>
> I have a machine which I have recently upgraded using cvsup, from 4.x
> to RELENG_5, as a staging post en route to 7.x. The upgrade went well
> until installworld ran out of disk on / and I realised it was only
> 64BMB. My bad; should have checked before upgrading. With help from
> an on-site colleague the installworld was nursed to completion. But
> can I get the same machine up to 6.x or 7.x without repartitioning?
> Advice please.
> Partitions are as follows.
> ad0 2439 M
> ad0s1 2439 M
> ad0s1a 64 M /
> ad0s1b 128 M swap
> ad0s1e 1024 M /var
> ad0s1f 600 M /home
> ad0s1g 623 M -
> ad1 57259 M
> ad1s1 57259 M
> ad0s1a 10240 M /usr
> It occurs to me that if ad0s1a is insufficient then I could use ad0s1g
> as swap, and repurpose ad0s1b as a new /. Is it straightforward to
> installworld/mergemaster to somewhere other than / ?
That is very well doable. On boot you can interrupt the boot process by
pressing space an set another location for the kernel.
More information is here.
The rest is just about files.
After you copy everything in ad0s1b (with a fs in it) you can boot from
I think you can do something like make installkernel DESTDIR=/blabla, but
I'm not sure.
Maybe more easy is booting with a LIVE-cd. Than you can mount everything
needed for installworld in /mnt/tmproot, so you get:
/mnt/tmproot mounted the _new_ / partition (ad0s1b?)
/mnt/tmproot/usr where /usr is mounted (ad0s1a)
/mnt/tmproot/var where /var is mounted (ad0s1e)
Do a chroot /mnt/tmproot and than run installworld and mergemaster as
usual from /usr/src.
Don't forget to make a backup. It is on your own risk. ;-)
More information about the freebsd-stable