Usually I just have two partitions, one for OS and programs, the other for personal data. Any time I have to reinstall the OS, I copy all the content of the OS partition to the data partition, then, after installation, I copy needed directories back to their original position and delete unneeded stuff.