Non-Destructive Partitioning with GParted
What is partitioning and why would you want to repartition? In the simplest terms, partitions are separate areas on your hard drive. In Windows a single hard drive can be partitioned to look like separate drives, so that what appears to be drive C:, drive D:, and drive E: may all be separate areas of a single physical drive. In Linux they may appear as hda1, hda2, and so on. There are many reasons why a hard drive may be partitioned, but a very common one is to keep the operating system and user data separate. In this way if the operating system is to be upgraded or restored the user's data doesn't have to be touched, lessening the risk of data loss. Another reason is to control damage from runaway files. In Linux most log files are kept in the /var folder. Sometimes servers are set up to put /var in a separate partition. If a runaway process starts filling up a log file it can only fill up the partition /var is on, leaving the free space on the other partitions untouched.
GParted is a free utility that allows you to partition your hard drive without destroying your data. It is a Linux program, but can be used to partition filesystems for Windows (FAT16, FAT32, NTFS) and Mac OS X (HFS, HFS+) as well. A full listing of the filesystems and operations available can be found here.
GParted does many checks and is very safe, but keep in mind that the partitioning process is only non-destructive if everything goes well. I think GParted says it best with the message it gives you if you try to run as a regular user: Since GParted is a weapon of mass destruction only root may run it. Always back up your data before major operations on your hard drive.
Even if you're not running Linux on your computer you can still use GParted by booting from the LiveCD.