I have a Linux machine (Linux Mint, KDE), which I've been using for some time, but now I've got a new machine with an already existing Linux on it (Kubuntu) and I'd like to "relocate" my Linux system to that machine without the hassle of manually configuring all the applications.

Beside of copying the home directory, what else should I take into consideration?

  • Swap the hard drive =) That's what I would do if they are compatible – WeloSefer Jan 2 '13 at 9:23

Unfortunately there isn't a magic bullet approach to this, and it depends largely on what configuration you have carried out in your time with Mint KDE.

As you have surmised, any KDE or user application level configuration is in your /home/user directory, and it is great to see you have had the forethought to hang on to this. Often, particularly where the distros and DE are the same, you can just re-use the entire /home without changes. Be sure to keep a copy of the vanilla one (that is created before you make any changes) so that you can figure out the differences if anything goes awry. The most important thing here is to make sure that your user UIDs on the Mint KDE and Kubuntu distros are the same. You can view these in /etc/passwd and if it doesn't you many need to chown the /home/ user folders to the right userid:

sudo chown user:users /home/user -R

Where user is the username and users is the primary group.

The majority of system level configuration exists in the /etc/ directory. Unfortunately, you aren't going to be able to just copy this over, as you will break lots of things. For each system level app configuration, you are going to have to take it one step at a time, and decide whether you can just copy over the /etc/ file for the app in question, or will need to merge changes, or re-configure as you did the first time.

Applications will also store information and "configuration" in /var/ - MySQL databases, including their structure are store in /var/lib/mysql. Cron files are stored in /var/spool/cron/, websites in /var/www, and the list goes on. If you haven't used any applications that store data in /var/ then none of this matters. If you have, then you may need to copy directories over from var too - there is no way to say without more information.


You can use rsync to do a full file copy to the new harddrive, and then setup bootloader. Below has a full instructions,

Full System Backup with rsync

  • Whilst this may theoretically answer the question, it would be preferable to include the essential parts of the answer here, and provide the link for reference. – slhck Jan 3 '13 at 14:53

Most of your settings should be in your home directory regardless. Unless you manually put other applications elsewhere, and have custom compiled applications not in your home directory (e.g. maybe in /usr/share), then you need to consider those on a case-by-case basis.

Without knowing what exactly you've done with your Linux distro, it's hard to recommend anything more than back up your files, and copy your home directory. At that point, if you did happen to require any additional files, you could always transfer them at a later date. However, almost all application settings are (by default) stored in your home directory (mostly in hidden/dot folders).

TL,DR: Personally, I would reinstall Linux so I have a "fresh" updated system, and simply copy your home directory over to keep your application settings. If you need to reinstall applications, you would then be able to install the latest versions while they automatically restore the settings copied from your home directory.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.