I have a similar problem I have a netbook that has all my current data & settings on it & I want my desktop software & files to be the same.
This is how I fixed my problem.
Let's call the computer with all the original data on it (in my case the netbook) the source & the computer that you want to get the data to the target.
Step 1). Make sure the source system is up to date
sudo aptitude update && sudo aptitude upgrade
Step 2). BACKUP the source user files. There are lots of different ways to do this. This is a good article on backing up. I also have a few articals on backing up in the IT section of my website www.marchiggins.com.
Personally, I choose rsync for this kind of task.
rsync -av /source_directory /target_directory
Depending on the destination you are going to backup your data to you need to run something like this on the source computer;
rsync -av /home/ /media/USB
rsync -av /usr/local /media/USB
cp /etc/apt/sources.list /media/USB
Technically in addition to the above you should also be getting your whole /etc directory & everything in /var (except /var/cache & /var/tmp) but I never bother. As you can see above I do make sure I get a copy of my /etc/apt/sources file.
Then we need to check what additional software is installed on the source computer. Again there are several ways you can do this but this is how I do it.
dpkg --get-selections > /media/USB/installed-software
Will create a file called installed-software that contains all the packages that you have installed.
Step 3). build the target computer & make sure it is the same OS version as the source computer. You can check your version number like this;
cat /etc/lsb-release
Step 4). Once the target has been built, you need to;
setup the users;
sudo adduser
copy the sources.list
sudo cp /media/USB /etc/apt/sources.list
& them make sure everything is up to date, just as we did in step 1)
sudo aptitude update && sudo aptitude upgrade
Step 6). Copy across all of your data, just as we did in step two except in reverse
sudo rsync -av /media/USB /home/
sudo rsync -av /media/USB /usr/local
Now you need to make sure the user ownership permissions on the home directories are set;
sudo chown -R username:username /home/pathtofolder
Step 7). Copy the installed-software file across to the Target computer & run the following to install all the software you had on the source machine to the target machine
sudo aptitude install dselect
cp /media/USB/installed-software /
dpkg --set-selections < installed-software
sudo dselect
Select 3. [I]nstall Install & Upgrade Wanted Packages
At this point you should have two computers that are the same.
From here you can use unison to keep them in sync or rsync. My preference again is rysnc but many people I know use unison & swear by it.