Here is what happens now on a 20GB disk I have here.

First, the "before" view, from a stock .upgrade file:
Code:
Disk /dev/hda: 16 heads, 63 sectors, 38760 cylinders
Units = cylinders of 1008 * 512 bytes

   Device Boot    Start       End    Blocks   Id  System
/dev/hda1             1        66     33232+   5  Extended
/dev/hda2            67       132     33264   83  Linux
/dev/hda3           133       165     16632   10  OPUS
/dev/hda4           166     38760  19451880   83  Linux
/dev/hda5             1        33     16569   83  Linux
/dev/hda6            34        66     16600+  82  Linux swap


Next, the "after" view, from running the new partitioning script:
Code:
Disk /dev/hda: 16 heads, 63 sectors, 38760 cylinders
Units = cylinders of 1008 * 512 bytes

Device Boot    Start       End    Blocks   Id  System
/dev/hda1             1       163     82120+   5  Extended
/dev/hda2           164       229     33264   83  Linux
/dev/hda3           230       295     33264   10  OPUS
/dev/hda4           296     38760  19386360   83  Linux
/dev/hda5   *         1        33     16569   83  Linux
/dev/hda6            34       163     65488+  82  Linux swap


Of course, the idea is not to run this on an empeg that has already been set-up, but I just wanted to show what would be done differently.

Mmm.. since the root filesystem (/dev/hda5) is now stuck at 16MB, perhaps we should increase the size of the spare (/dev/hda2) partition?