r/Fedora•
Mr_Chuffy

How much disk space for / partition?

I am going to switch from Ubuntu to Fedora 36. I want to do separate / and /home partitions to make things easier for me in the future. My SSD is pretty small (256GB), so I don’t want / to be unnecessarily large. What is a good partitioning scheme?

Posted Jan 30, 2023, 6:47 PM UTC

611
[deleted]•

Are you sure you need different partitions and a btrfs subvolume isn‘t enough?

12
Mr_ChuffyOP•

I am not sure, I wasn’t aware of the concept. from Googling I’ve gathered that this is a part of the default Fedora install and, if all I want my partition for is to swap out/ update the os without touching the file system, then a btrfs sub volume is enough, would you say that is accurate?

3
[deleted]•

Yes, that‘s accurate. You can also very easily create new subvolumes, create and restore from snapshots, and they grow/shrink automatically. Not need to determine partitions sizes during install anymore :)

9
doomygloomytunes•

Don't use partitions, this ain't Windows. If you must use separate filesystems use lvm and logical volumes or just go with the default layout which uses btrfs.

Also Fedora 37 is the current release, 36 is EOL in 3 months.

11
Aaron1503_•

Use btrfs subvolumes.

7
RatOnABoat•

I normally give it 5G. Then again I also would separate out /var, /usr, /tmp, /var/tmp, /var/cache, /home/, /var/log, /var/log/audit. Though that's a bit over kill for day to day systems, mainly what I'd use on a server.

Personally I'd just use btrfs on a every day system and not worry myself.

2
rswwalker•

I like to use one btrfs volume for everything if the distro supports it otherwise a /boot and everything else in a single btrfs volume.

2
zardvark•

I'm not a btrfs user, so I generally use about 30 GB for root on a light install and perhaps as much as 50 GB if I plan to install everything, including the kitchen sink. /home is obviously as large as possible and I always install my games on a separate SSD.

1
ModzRSoftBitches•

doesnt flatpak use some space in /home? if use flatpak prob need more

1
evilquantum•

Flatpak easily takes up to 10GB in /var/lib/flatpak even with only a few apps installed. I removed flatpak completely from a VM where I assigned 20GB on the fast ssd to / and a huge /home on an old spinning disk

2
notsobravetraveler•

I tend to do something a bit like this (LVM+XFS):

/: 50G
/var/log: 10G
/home: 50G
/var/lib/docker: 20G
/var/lib/libvirt: 100G

These sizes are guesses/my minimums -- if affordable/useful, I'd allocate more

I keep /var/log intentionally 'small'. It's big enough for normal operations... but if something goes out of control, it's easy to notice - the filesystem has filled.

Either something is logging uncontrollably or my rotation is broken. Note: I don't have any retention requirements. For servers/work environments I'd behave differently

Having /home on a different mount is useful for some security mount options: nosuid, nodev, and (maybe for the paranoid) noexec. Those come with varying degrees of breakage, but they effectively disable some things open to abuse.

Keeping Docker/libvirt isolated is useful in cases of rebuild/migration. Containers (particularly, their images) and VMs easily use the most space

edit: Keep in mind that if you ever intend to shrink... I'd suggest EXT4. XFS will not do it, I'm not sure about others.

BTRFS lets you not care about allocation, and it's generally a fine option.

I don't use it personally, my workloads are extremely latency sensitive!

I have gen4 NVMe drives in RAID, backing VMs that all get their own logical volumes. Placing an image file on a filesystem alone creates noticeable latency, let alone CoW.

I'll note that any RAID10 array I've used with BTRFS has required consistent scrubbing after power events. Meanwhile, direct LVM raid or through md will carry on happily

0