Back up what you've changed after setup. This means:
- your home directory, where all your own data should be, including personal settings in the "hidden" directories whose name begins with a dot
- those system-wide configuration files that you have altered either manually or trough some sort of "front-end"
- if you have installed some files to the filesystem that are not available trough the usual .tar.gz package system or available from the reposities
- packages that you have downloaded and installed, unless they are available in the reposity (if you store them under your home directory, they'll come along with the first step)
That's pretty much it. You can get the software from the reposities so there is no point in backing that up; your home directory fills probably most of the backup. If you have altered system wide configuration files you can either do it again after a fresh install, or grab them along and afterwards put them back, as long as the target system still understands those configuration files.
If you like, you can make a list of what you've changed, and then a script that copies those files to a backup directory (or archive) and when called with a different argument (for example, or a different script), copies them back to their original places. It's rather easy. But if you haven't changed the system-wide configs a lot, maybe just wireless configuration files (like wpa_supplicant) or something, it's easier to just copy those and not make a script out of it.
In Linux backing up is relatively easy, because just about everything consists of files, and there is no registry (as in Windows). And user data is in the home directory.
Of course if you have a spare harddisk identical to that you currently use, just use dd to make a 1-to-1 image from your harddisk. Surely the easiest way, though taking and putting back the backup takes some time, and consumes quite a lot of space
I'd just backup homedir and the important configs.
There are programs to do incremental backups and such, but if you just want to have basic backups from that state, you don't need magic tools like in Windows. tar, find, cp and such are your friends.