On 7/29/2020 11:38 AM, Charlie Gibbs wrote:
As for partition sizing, I set up my machines with three partitions: /, /home, and swap.
I don't implement a separate partition for /home. Instead, I place it on my data array where it gets backed up nightly, then a create a symlink to /RAID/home from the root directory. That way, the user's files can grow to be as gargantuan as they like, they have protected backups, and I don't have to worry about upgrades.
If you're going to be installing lots of software on your machine (especially games), I'd recommend setting aside 20 or 30 gigabytes for /, since /usr can get pretty large. I learned this the hard way after getting caught behind the 8-ball after a kernel upgrade. Fortunately, gparted came to the rescue, allowing me to shave 10GB off /home and give it to /. I use the old rule of thumb of twice memory size for swap, and give what's left to /home.
By moving /home to the data array, I leave plenty of breathing space for /. Since I am using SSDs for booting, I get a little generous and use 40GB total of swap - 20G from each drive - with 16G of memory. I allocate a generous 200M of space to a /boot partition on each drive assembled into a RAID 1 array formatted as ext2. Since /boot almost never gets written, there is no need for journalling. That leaves a full 98G for / on a pair of 128G SSDs. These can be had for as little as $18 each, these days.
You definitely want /home in its own partition - it makes life much easier when doing upgrades, since you can completely wipe out / while leaving /home intact. (Needless to say, though, I back up /home regularly, plus /etc and /usr for good measure.)
I agree /home is best kept separate from /, but I disagree it is better to give it it's own partition on a NAS or file server. I agree it is a good idea on a workstation or an embedded system, where all of the partitions may be somewhat limited, and in particular where there may be only a single hard drive or a single set of array spindles. On a NAS or file server, however, the data repository needs to be huge, and given that /home is a lot more volatile than /, or especially /boot, I think putting /home on the data repository is a better idea. After all, why limit its size while simultaneously eating up space that some day might be needed by /? That, plus the drive(s) used by the boot system will likely last a lot longer if not subjected to the thrashing inherent in the /home directories.