Take the 2-minute tour ×
Unix & Linux Stack Exchange is a question and answer site for users of Linux, FreeBSD and other Un*x-like operating systems.. It's 100% free, no registration required.

I already read this thread, so please don't mark me as a duplicate of it. That asks how. I want to know how safe it is.

I currently have Fedora 20 with GNOME 3.8. I've already messed up its configuration to the point of being unable to log in graphically, but that's not this question.
I want to install Ubuntu 14.04 LTS, with the default desktop environment (i think it's called Unity).

Will the two distros' configs interfere with each other if I use the same /home partition?
I prefer not to put my main files/folders (docs, music, pics, git repos) in a subdirectory, as Nautilus seems to have hardcoded shortcuts to ~/Documents, ~/Music, ~/Downloads, etc.

I expect to use much of the same programs (Chrome, Rhythmbox, Nautilus, Sublime Text) on the distros. Will their configs get messed up if they're shared?

share|improve this question

4 Answers 4

up vote 1 down vote accepted

I recommend setting up a directory under /home in which you put everything that you want to share between the different environments. E.g. mine is called /home/avdndata and I have links from my actual home directories (for different distributions) to the subdirectories of /home/avdndata. This allows me explicitly share things that I know that work, while not sharing other configuration that have incompatibilities. I do share /home, but I have different directories for the same user under /home for the different distros/versions (i.e. for user 'anthon' I do have something like /home/anthon12 and /home/anthon14 etc.)

In this way I have shared material, normally kept in home, between SuSE and Ubuntu and between different Ubuntu versions. Before installing a new version I make a backup of everything used by the old version (especially the shared stuff). And if, after the upgrade, some program that changes a configuration file in some backward incompatible way (I have seen .ini files being replaced by .xml), you notice that when you start the old system and it complains. At that point you can move that configuration out of the shared directory, remove the link and restore the relevant files from your backup in the old version.

(Of course the whole linking and unlinking thing is automated with some scripts).

share|improve this answer
    
This is the solution i decided to go with. –  Scimonster Jul 21 at 9:09

The problems with sharing /home across several non-identical installations, is not so much with the operating system, as it is with the programs - and especially their versions - installed on each system.

If you have the same kind of software installed on both systems but having different versions, you might run into problems, when one version understands its dot-file, while the other version might not understand it at all, or not understand it partially. Some software, like Vim, is OK with not understanding its config file partially. Some people have repos on GitHub with their config files to quickly reproduce their home directory.

Mostly you'll be fine, but that'd be subject to testing.

The real killer, though is the partition not being able to mount under each one of the systems. If the partition is found by both systems, it shouldn't be much of a problem. But, you might need to tailor both systems, quite precisely. For one thing, things fall apart, when you have different UIDs for the same user on each distro. So Yeah, it is possible, and on larger installations (Universities, companies, etc.) it is done. However, you must consider the prerequisites when working with it.

Some people have their /home partition on external drives, some have them mounted over the network, for exactly that reason. Your idea is not far fetched at all, it just takes an admin a few hours to configure everything to avoid problems.

share|improve this answer
    
+= In the very specific case of a recent Ubuntu and a similarly recent Fedora you shouldn't run into problems, because the software versions are not too far from each other. However, if it really is your user specific setting that keeps your Gnome from starting with Fedora, you could very well hit the same problem with Ubuntu. –  Bananguin Apr 29 at 13:09

Yes, no, and maybe. What is true today may not be true tomorrow.
The simple fact is, things can get screwed up.

  • If your application is smart about things, it will version its database and configuration so that if it loads a newer version, it'll either warn you or explode. Banshee does this. That's great for integrity but awful for consistent running.

  • If it isn't (and again, who is to say which applications this may or may not apply to in the future), you risk data loss. The bigger the difference in application versions, the bigger the chance, I would say.

If you can guarantee the same versions on both OS and take care to upgrade both at the same time (so Chrome and ST are as close as possible), you can probably mitigate most of the risk... But there will always be risk this way.

At the very least, I'd suggest taking a backup every time you boot to either OS. Script something in that just makes a big copy of your most important libraries and settings and squirrels them away somewhere so that if things do break one day, you can restore and go back to the other OS.

share|improve this answer
    
1) I generally run updates between 1 and 3 times each week. Would that be often enough? If there were such a thing as asynchronous bash i would set it up as a login script, so that it can update while i do other stuff. 2) What do you suggest to back up on boot? I'm not planning on sharing /usr, that would be crazy. Things like config files/dirs? –  Scimonster Apr 29 at 9:24
    
1 largely depends on the OSes. Ubuntu has a stable release policy which means it'll stick with a version of something for the entire lifetime of that Ubuntu release (there are exceptions). If Fedora does the same and your chosen releases are different versions, you'll always be on the sqwonk. It's not the minor versions that would really worry me. For 2, The backup script could just be a simple user-located autostart job. –  Oli Apr 29 at 9:36
    
I understand how to run a backup script. The question is what specifically should be backed up? –  Scimonster Apr 29 at 9:38
    
Whatever is both shared and important (irreplaceable or time consuming). As I say in my answer, there isn't a closed scope for what might break one day. –  Oli Apr 29 at 9:43

It's not very safe because different OS may do different things with the users home directory. If you must, then you better use a common user-identification backend somewhere to avoid uid/gid issues.

It's probably a better idea to host a user directory on a common nfs system and then use autofs to mount it automagically inside of each OS' respective users homedirectory.

share|improve this answer
    
I already read that the uid/gids have to be the same. That autofs idea sounds interesting, could you elaborate? –  Scimonster Apr 29 at 9:16

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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