Moving paritions around

Ian Smith smithi at
Fri Mar 30 09:46:00 UTC 2007

On 30 Mar 2007 02:50:31 -0000 John Levine <johnl at> wrote:

 > I set up my laptop to dual boot between W1nd at ws and FreeBSD.  When I
 > first set it up I made the partitions the same size, but since then I
 > found I do a lot more with FreeBSD so I'd rather give it more space.
 > So the last time I had to reinstall Windows from scratch, I made its
 > partition smaller.  Now there's a big chunk of free space between
 > the two partitions.  Should I expect the following to work?
 > (back everything up, duh)
 > Boot from a CD, change the partition table to make the FreeBSD partition
 > start right after the Windows partition
 > Use dd to move down the existing FreeBSD partition data so it starts
 > at the beginning of the new partition
 > Use growfs to give the extra space to my /usr filesystem, which is at
 > the end of the existing partition

That all sounds a bit scary, and I don't know if it might work.

 > Or should I just back it all up to a USB disk, reformat, and restore it,
 > which will take considerably longer?

You could, or you could do as Garrett suggested, but what I'd likely do
(have done) in the same situation is to make a new FreeBSD slice with
fdisk, occupying the area you've freed above the 'doze slice, and mount
it on, say, /data.  Or you could mount it on say /usr/data, whatever. 

One caveat: if you use sysinstall to setup the fdisk/newfs/labeling of a
new slice that's _before_ your boot slice, be sure to write your changes
and bail out of sysinstall before it thinks you want to install there :) 

Cheers, Ian

More information about the freebsd-questions mailing list