[[!toc]] # Scenario I have got a 250GB SATA harddisk with DragonFlyBSD 2.3.2 32-bit installed on it. Actually I want to repartition my harddisk in order to install other OSes besides DragonFly, so for that I need to shrink the current installation size. Above all, I would like my system just like it is now. Although several methods could be used, as this is a HAMMER installation, I'm going to use HAMMERS's mirror-{read,write} capabilities. This assumes you cannot store the PFSs in another HAMMER disk so that you have to store physical data compressed in files that can be put in any share you have. Here I will be using a NFS share. # Pre-steps ## Upgrade HAMMER version You should check that your HAMMER version is at least 2 (NORM 2.3 - New directory entry layout). smash64# hammer version / min=1 wip=3 max=2 current=2 description="2.3 - New directory entry layout" available versions: 1 NORM 2.0 - First HAMMER release 2 NORM 2.3 - New directory entry layout If not, you would have to use hammer version-upgrade. See [hammer(8)](http://leaf.dragonflybsd.org/cgi/web-man?command=hammer§ion=8) for details. # Saving the data smash64# hammer mirror-read / | gzip -3 -c > root.gz histogram range 0000000000000000 - 000000129a02c4b0 Mirror-read: Mirror from 0000000000000000 to 000000129a02c4b0 smash64# smash64# hammer mirror-read /var | gzip -3 -c > var.gz histogram range 0000000000000001 - 000000129a02c4f0 Mirror-read: Mirror from 0000000000000001 to 000000129a02c4f0 Mirror-read /var succeeded smash64# smash64# hammer mirror-read /tmp | gzip -3 -c > tmp.gz histogram range 0000000000000001 - 000000129a02c790 Mirror-read: Mirror from 0000000000000001 to 000000129a02c790 Mirror-read /tmp succeeded smash64# # Reinstalling # Restoring the data # Fixing the configuration # Booting