You say this with respect and admiration, right?
It's not very clear what you're trying to do, but I guess you want to resize a linux partition.
You would need to be not using that partition at the time - you would get in serious bother if you messed with a mounted partition, so use a live-cd, not your installed system (knoppix is good). qtparted is included in knoppix and it seems to work most of the time.
Also, have you considered not resizing your original partition, but instead creating a new partition and moving part of your filesystem there. If it's applications that are swelling your system, move /usr, if it's user files, move /home. This would have the advantages that you are not resizing partitions (so safer), and it can also make backup easier.
To do this:
create the new partition - cfdisk, fdisk, parted, qtparted, etc
format the partition with your favourite filesystem - mke2fs, mkfs.vfat, etc
mount the partition somewhere temporary
Code:
mount /dev/hdax -t ext3 /mnt/tmp
copy the files across,
but check the options for the cp command first, because you'd want to preserve all permissions
Code:
cp -a /home /mnt/tmp
(at this point you could throw in a temporary bogus file as an indicator)
Code:
echo "this is on /dev/hdax" > temp_hdax
edit /etc/fstab so that /home is mounted on /dev/hdax
(have a look at man fstab and man mount for what to add, and remember /home needs to be mounted after /)
then reboot the system and check whether that file temp_hdax is in /home
(replace hdax with whatever your partition is, /home with whichever directory you are moving, ext3 with whatever filesystem you formatted it with, and /home with whichever directory you are moving)
if this worked, then you can free up the space on the original partition by deleting all the files in the original /home, but you'd probably want to do this using the live-cd as well, so you got the right files