Briefly: I’m running Kubuntu right now, just installed a second ssd. If I install another distro (say opensuse) on it, can I tell it to use the same /home that kubuntu is using (which is on a separate partition and drive)? Actually looking to switch distros, but I want to keep all my data where it is on the bigger hdd, while moving games to the ssd.
If you want/need more details:
- ssd1: windows, kubuntu /
- hdd1: kubuntu (opensuse) /home
- ssd2: (goal) opensuse /, second partition for games
You can share your /home
partition directly, but you’ll likely find problems with things like theming and other configurations when you do. This is because you’re not only sharing the stuff you want, like ~/Documents
and such, but also all of the hidden configuration directories like ~/.local
as well. While most every distro uses the same visible directories, they are less likely to store their config files in the same places as others.
To get around this, I mount my “universal” home directory somewhere other than /home
, e.g. /mnt/home
instead. Then I symlink the folders that I care about to each distro’s /home
directory, e.g ln -s /mnt/home/<username>/Music ~/
. It works across all Linux distros as well as other Unices (as long as they can read the filesystem that you put your universal /home
on…ZFS is great for this). I’ve used this successfully to share my ~/*
directories between Linux, FreeBSD, and MacOS installs at one time or another. But it still lets each distro or OS have its own configurations without interfering with the other stuff you’re multibooting with it.
I see. So I’d probably do just as well to keep the /home’s separate and then store my files wherever then, right?
Yeah, But if I understand correctly that’s how you’ve already got it set up: your /home
is on your hdd. Once you have your new ssd installed and your partitions set for opensuse /
and your games partition, use rsync
to copy your games over to their new partition and mount it wherever you like. Make sure to verify that they all copied over correctly and work as expected before deleting them from your home partition.
Once you’ve got your new ssd installed, your new OS on it, and your games transferred to their new partition, mount your home partition on opensuse somewhere that’s not /home
itself…I like /mnt/home
, but it doesn’t really matter. Make your symlinks to your “content” folders (~/Documents
, ~/Music
, etc.), and you’re golden. Likewise, mount your new games partition somewhere (perhaps /mnt/games
) and symlink it as well to wherever makes sense for your purposes.
You can then go back to Kubuntu and move the mountpoint for your home partition, recreate a home directory for kubuntu (since you moved the mountpoint it will no longer have a /home
directory), and make your symlinks like you did for opensuse. You don’t have to, though, unless you want to…having your home partition at /home
on Kubuntu and /mnt/home
on opensuse won’t break anything or matter to either OS, but consistency is nice and can make it easier for you as the user.
One last thing: make sure your users and groups match up between your OSs so each has permission to see your shared home directories. If your username is “murdoc” and your UUID is 1000 on Kubuntu, make sure that they’re the same on opensuse. Likewise, make sure your user’s primary group ID matches between your OSes as well. Use usermod
and groupmod
if necessary, but hopefully opensuse lets you specify a UUID when you set up your new user.
I think I get it, thanks. Looks like I can just do this slowly, one step at a time, instead of one big operation I was expecting. I suppose one of my main concerns was how opensuse would react to there being an existing /home upon installation, but it’s not going to just delete it because I told it to make its own. It counts as separate because it’s on a different device, I just have to tell it where to mount on the new fs, right?
Another little thing: will opensuse just add itself to the my current grub config, or do I need to do anything fancy there?
It’s possible in principle, but if there’s different software versions at play, they’re likely writing incompatible cache and config files.
Instead, you could move your personal files (Documents-folder, Pictures-folder etc.; so without the dot-files) to a separate folder/partition/disk and only link those into each distro’s home-directory.