Resizing is done with livecd like Parted Magic Iso, Linux Lite 2.4 live.
You shrink the drive you wish to borrow the space from for boot. It cannot be on a extended partition however (the one you need to borrow space from.
Shrink it. When done. Resize the /boot to grab the extra space. Hit apply. Done.
Latest gparted live cd if you need just a small iso for just partitioning work. I keep one on my cd rack.
http://gparted.org/livecd.phpdf -h --total
will tell you where everything is and
sudo parted -l
should inform you of extended/logical partitions.
sudo parted -l
Model: ATA SAMSUNG HM321HI (scsi)
Disk /dev/sda: 320GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Number Start End Size Type File system Flags
1 1049kB 106MB 105MB primary ntfs boot
2 106MB 123GB 122GB primary ntfs
3 123GB 320GB 198GB extended
6 123GB 141GB 19.0GB logical ext4
5 141GB 316GB 174GB logical ext4
7 316GB 320GB 4193MB logical linux-swap(v1)
If my /boot partition is above extended. I have to borrow space from ntfs primary and shrink that one.
If my /boot partition is below extended. I have to borrow space from ext4 and borrow space for either one of those. One is my / root. The other is /home.