How did you partition your disk before installing Linux? Do you regret how you set it up?
I’m looking for some real users experiences about this and I’m trying to find the best approach for my setup.
Thank you for sharing!
In 20 years of using Linux my partition scheme has always been to say yes to whatever the OS suggests.
whatever the OS suggests.
Ew. Then you get XFS.
Defaults are usually fine for most users. People who know they are going to distro hop or need to move data later should have a separate
/home
, but that’s about it until you get into special purpose installs.save 80gb for root, sone swap (if not on an ssd) rest for /home. that way reinstalling or switching has minimal risk of losing my /home
½TB nvme SSD for the OS and any system/user level binary
1TB sata SSD for code projects, docker, and videogames
10tb HDD for just having a massive amount of fairly stable storage space. I gotta tell you I sleep really well knowing that at 4 in the morning a compressed disk image of my work SSD is being written to the hard drive.
For Laptops:
- 500 MB - /boot/efi
- 1 GB /boot ext2
- X GB for / with Luks2 encrypted f2fs
And don’t forget: GPT not MBR.
I partitioned my disk 50/50 for Windows and Linux with some proprietary software. It didn’t end up working and i whiped my windows install.
Then I bought a new boot drive so my linux and macos install are physically separated.
Just recently repartitioned my MacBook:
1 GB for EFI (vfat)
2 GB for /boot (ext4)
11 GB for swap
224 GB for / (bcachefs)
Grub cannot load a kernel off bcachefs so I need ext4 to bridge the gap. Once the kernel is loaded, it has no problem using bcachefs as root.
This is a laptop. On a desktop that can handle more drives, I would split /home onto a drive of its own.
/boot/efi /root
Two separate EFI boot Partitions if you dual boot. Its not worth letting Windows know about linux. Linux chainloads to Windows boot.
Partitioning is one of those obsolete Unixisms that is best left in the 90s. Only exception is dual booting, but even there partitioning isn’t really very important anymore
- 180 MB
/efi
(if needed) - 384 MB
/boot
(for LUKS compatibility) - Remainder
/
(usually btrfs)
- 180 MB
sudo rm -rf *
Are you going to dual boot? Do you have some other special requirement? If not, there’s no reason to overthink partitioning in my opinion. I did this for my main NVME:
- Partition table: GPT
- /boot : 1GB fat32 partition. Depending on your needs (number of kernels, initramfs’s, other OSs) you might be fine with 500MB or even less. But because resizing can be a pain and I have the space to spare, I would much rather overprovision.
- / : LUKS2 partition containing a btrfs filesystem with all the remaining space
I use a swap file so I don’t use a swap partition. If you want more control over specific parts of the filesystem, eg a separate /home that you can snapshot or keep when reinstalling the system, then use btrfs subvolumes. This gives you a lot of the features a partition would give you without committing to a specific size.
This is the only partitioning scheme I have never regretted. When I’ve tried to do separate partitions I find myself always regretting the sizes I’ve allocated. On the other hand, I have not actually seen any benefit of the separation in practice.
not actually seen any benefit of the separation in practice.
The first time some big download hoses your root, you will be enlightened :-D
Right, so this is exactly the sort of “benefit” I never expect to see. This is not something that has happened to me in ~25 years of computer use, and if it does happen there are better ways to deal with it. Btrfs and zfs have quotas for this, but even if they didn’t it would not be worth the tradeoff for me. Mispredicting the partition sizes I’ll end up needing after years of use is both more likely to happen and more tedious to fix.
EFI 83:boot(e4fs) 8e:lvm(e4fs) bf:zfs
This is just for /dev/sda or so, and implies non-redundant root disks because mirroring is done by the hypervisor. I’ve been 20 years doing virtualization, and I’m really starting to forget the last vestiges of my mdadm fdisk layout.
So many people in this thread have no idea why you’d want separate allocation for /home and /tmp and others. Are we missing proper mentorship?
Well played NSA…! Anyway :
fabien@debian2080ti:~$ df -h Filesystem Size Used Avail Use% Mounted on /dev/mapper/debian2080ti--vg-root 28G 25G 1.8G 94% / /dev/mapper/debian2080ti--vg-home 439G 390G 27G 94% /home /dev/sda3 1.7T 1.6T 62G 97% /media/fabien/a77cf81e-fb2c-44a7-99a3-6ca9f15815091 /dev/nvme0n1p2 456M 222M 210M 52% /boot /dev/nvme0n1p1 511M 5.9M 506M 2% /boot/efi udev 16G 0 16G 0% /dev tmpfs 3.2G 1.9M 3.2G 1% /run tmpfs 16G 168K 16G 1% /dev/shm tmpfs 5.0M 24K 5.0M 1% /run/lock tmpfs 3.2G 2.6M 3.2G 1% /run/user/1000
so basically NVMe for system and
/home
in .5T and HDD 2T for backups and rarely accessed files, ext4.No dual boot, no Windows. No regrets.