Do you really need home partition on your Linux?
I generally create three partitions when installing a Linux distribution on my computer:
Some people suggest that the swap partition is no longer required. I however think that disk space is cheap and so it does no harm to create one even if you never use it.
In this article I am going to be looking at the home partition.
Do you need a separate home partition?
If you have installed Ubuntu and you chose the default options whilst installing Ubuntu you might not realise it but you won’t have a home partition. Ubuntu generally creates just 2 partitions; root and swap.
The main reason for having a home partition is to separate your user files and configuration files from the operating system files.
By separating your operating system files from your user files you are able to upgrade your operating system without fear of losing your photos, music and videos.
So why doesn’t Ubuntu give you a separate home partition?
The upgrade facility that comes as part of Ubuntu is fairly decent and you can get from Ubuntu 12.04 to 12.10 to 13.04 to 13.10 to 14.04 and 14.10 without having to wipe your computer and reinstall. In theory your user files are “safe” because the upgrade tool works properly.
If it is any consolation Windows doesn’t separate operating system files from user files either.
They all live on one partition.
Ubuntu has a home folder and under the home folder you will find sub-folders for music, photos and videos. All of the configuration files will also be stored under your home folder. (They will be hidden by default). This is much like the documents and settings setup that has been part of Windows for so long.
Not all Linux distributions are equal and some might not provide a consistent upgrade path and may require you to re-install the operating system to get to a later version. In this case having a home partition is really very useful as it saves you copying all of your files off the machine and then back again afterwards.
I am of the opinion that you should always have a separate home partition. It just makes things easier.
One thing you shouldn’t do however is confuse the fact that because you have a separate home partition that you no longer need to do backups because you should (especially if you plan to upgrade your operating system or install a new one).
How big should the home partition be?
If you only plan to have one Linux distribution on your computer then your home partition can be set to the size of your hard drive minus the size of the root partition and the size of the swap partition.
For instance if you have a 100 gigabyte hard drive you might choose to create a 20 gigabyte root partition for the operating system and an 8 gigabyte swap file. This would leave 72 gigabytes for a home partition.
If you have Windows installed and you are dual booting with Linux then you might choose to do something different.
Imagine you have a 1 terabyte hard drive with Windows taking the whole drive. The first thing you need to do is shrink the Windows partition to make space for Linux. Now obviously the amount of space Windows will give up will be dependent on how much it needs.
Say for arguments sake that Windows needs 200 gigabytes. This would leave 800 gigabytes. It might be tempting to create three Linux partitions for the other 800 gigabytes. The first partition would be the root partition and you might set 50 gigabytes aside for that. The swap partition would be set to 8 gigabytes. This leaves 742 gigabytes for the home partition.
Windows will not be able to read the home partition. Whilst is it possible to access Windows partitions using Linux it is not as easy to read Linux partitions using Windows. Creating a massive home partition is not the way to go.
Instead create a modest home partition for storing configurations files (say a maximum of 100 gigabytes, it can be much less).
Now create a FAT32 partition for the rest of the disk space and store music, photos, videos and other files that you might wish to use from either operating system.
What about dual booting Linux with Linux?
If you are dual booting multiple Linux distributions you can technically share one home partition between them all but there are potential issues.
Imagine that you are using Ubuntu on one root partition and Fedora on another and they both share a single home partition.
Imagine now that they both have similar applications installed but the versions of the software are different. This could lead to issues whereby the configuration files become corrupted or unexpected behaviour occurs.
Again I think the preference would be to create smaller home partitions for each distribution and have a shared data partition for storing photos, documents, videos and music.
To sum up. I would always recommend having a home partition but the size and use for the home partitions change depending on your requirements.