One single partition for Linux versus using a partition table?

Heya folks, some people online told me I was doing partitions wrong, but I’ve been doing it this way for years. Since I’ve been doing it for years, I could be doing it in an outdated way, so I thought I should ask.

I have separate partitions for EFI, /, swap, and /home. Am I doing it wrong? Here’s how my partition table looks like:

  • FAT32: EFI
  • BTRFS: /
  • Swap: Swap
  • Ext4: /home

I set it up this way so that if I need to reinstall Linux, I can just overwrite / while preserving /home and just keep working after a new install with very few hiccups. Someone told me there’s no reason to use multiple partitions, but several times I have needed to reinstall the OS (Linux Mint) while preserving /home so this advice makes zero sense for me. But maybe it was just explained to me wrong and I really am doing it in an outdated way. I’d like to read what you say about this though.

KISSmyOS,

It’s a good way to do it for your use case.

It’s not outdated, just less necessary now. With SSD’s, you can just copy your /home back from your daily backup after reinstallation, which takes all of 5 minutes.

mambabasa,
@mambabasa@slrpnk.net avatar

is this daily backup in-built in SSDs or is that a manual thing?

Successful_Try543,

No, but we all always do daily backups 😇.

KISSmyOS,

Ah yes, somewhere in this drawer I probably have a couple of daily backups from 2017.

KISSmyOS,

OpenSUSE (and probably some other distros) have it built-in, you just have to activate it. If yours doesn’t, you have to install a program that does it or configure one manually.

mambabasa,
@mambabasa@slrpnk.net avatar

I have daily backups for brtfs but for my / only via Linux Mint’s Timeshift. I do manual backups for some of my home folders every week. I take it the backups you mention would be lost over a reinstall?

KISSmyOS,

A backup is only a backup if it’s not connected to the computer (ideally in a different building), so it wouldn’t be lost with a reinstall.

mambabasa,
@mambabasa@slrpnk.net avatar

Makes sense, thanks.

taladar,

How long that takes depends entirely on the size of your home, the number of files in there and how you store your backups.Not everyone has tiny home directories.

KISSmyOS,

If your home is smaller than 2TB, it’s not an issue.
And if it’s larger than 2TB, then why the hell is all that data on your /home SSD and not a separate HDD, NAS or file server?

mvirts,

This is the way

kalkulat, (edited )
@kalkulat@lemmy.world avatar

When I started with Linux, I was happy to learn that I didn’t need a bunch of separate partitions, and have installed all-in-one (except for boot of course!) since. Whatever works fine for you (-and- is easiest) is the right way! (What you’re doing was once common practice, and serves just as well. No disadvantage in staying with the familiar.)

After I got up to 8GB memory, stopped using swap … easier on the hard drive -and- the SSD. (I move most data to the HD … including TimeShift … except what I use regularly.)

I use Mint as well; for me this keeps things as simple as possible. When I install a new OS version (always with the same XFCE DE) I do put THAT on a new partition (rather than try the upgrade route and risk damaging my daily driver) using the same UserName. A new Home is created within the install partition (does nothing but hold the User folder.)

To keep from having to reconfig -almost everthing- in the new OS all over again I evolved a system. First I verify that the new install boots properly, I then use a Live USB to copy the old User .config file (and the apps and their support folders I keep in user) to the new User folder. Saves hours of reconfiguring most things. The new up-to-date OS mostly resembles and works like the old one … without the upgrade risks.

mambabasa,
@mambabasa@slrpnk.net avatar

In my next reinstall, can I combine the / and swap partitions (they’re next to each other so I can do this) and will swap files just be automatically created instead?

520,

You can use a swap file in your main partition, but most installers won't set this up for you. You'll want to follow this guide after installation: https://www.cyberciti.biz/faq/linux-add-a-swap-file-howto/

lemmyvore,

They won’t be automatically created but you can create your own swap file on /, no need for a dedicated partition:

  • Use dd to create a file filled with zeros of appropriate size.
  • Format the file with mkswap.
  • Activate the swap file instantly with swapon.
  • Add it to /etc/fstab so it will be automatically used on reboot.

Appropriate size will vary but I suggest starting with something like 100 MB and check once in a while to see how much is actually used. If it fills up you can replace it with a larger swap file or you can simply create another one and use it alongside the first.

mambabasa,
@mambabasa@slrpnk.net avatar

Thanks!

rotopenguin,
@rotopenguin@infosec.pub avatar

Btrfs has some extra demands for its swap file, so the tool has its own “btrfs filesystem makeswapfile” command.

selokichtli,

They are probably using timeshift or some advanced feature in btrfs to auto-generate snapshots so they can go back to a working state using one of them.

The way you do it is probably getting old. I say this because I do the same, but to use several distros with a shared home partition, provided I have the same GID and UID for the users. This is not recommended but only once I’ve had a problem and it was easy to solve, so I kept doing it. Installed Fedora recently with defaults in one partition and they use one fat partition (EFI), and one btrfs partition with a logical volume and some unfamiliar partitioning. I think we are maybe missing some new technologies.

backhdlp,
@backhdlp@lemmy.blahaj.zone avatar

I think that’s a pretty common partition layout

Presi300,
@Presi300@lemmy.world avatar

I’d use sister partitions for everything but swap, just use zram for swap, it’s faster and doesn’t need it’s own separate partition

mambabasa,
@mambabasa@slrpnk.net avatar

How do I set that up?

elscallr, (edited )
@elscallr@lemmy.world avatar

Boot from a live distro so you can modify your boot disk. Use the disk utility to create partitions. Copy the data to the relevant partitions ensuring to maintain file ownership and permissions. Modify /etc/fstab to mount the partitions at the designated locations in the filesystem.

I don’t bother putting anything but /home on its own dedicated partition, but if you ask 10 people this question you’ll get 12 opinions, so just do what feels right.

mambabasa,
@mambabasa@slrpnk.net avatar

Thanks

elscallr, (edited )
@elscallr@lemmy.world avatar

Note: Create your partitions from your empty space. You may need to resize your existing partition to do this. But don’t practice on your main drive.

This is a simple job, in that the steps are few, but it’s something that causes catastrophic data loss if you get it wrong.

I’d recommend buying a cheap second drive, doesn’t have to be big or even good. Partition it, mount it, make sure you can make the partitions automatically mount, teach yourself to copy data around, umount it and remount, make sure you got it right.

Just… these are all very simple things. I wouldn’t hesitate to repartition my own drives. But if you fuck it up you fuck it up good. Make sure you know the operations you’re taking first. Measure twice, cut once, all that jazz.

Illecors,

It’s not wrong, as such, but simply not right. Since you’re using btrfs, having a separate partition for home makes little sense. I, personally, also prefer using a swapfile to a swap partition, but that’s potato/potato.

mambabasa,
@mambabasa@slrpnk.net avatar

Alright, but actually I don’t think I’m maximizing my use of btrfs. I only use btrfs because of its compatibility with Linux Mint’s Timeshift tool. Would you be implying if I used btrfs for the whole partition, I can reinstall / without overwriting /home?

Illecors,

BTRFS has a concept called a subvolume. You are allowed to mount it just like any other device. This is an example /etc/fstab I’ve copied from somewhere some time ago.


<span style="color:#323232;">UUID=49DD-6B6F                                  /efi            vfat    defaults        0 2
</span><span style="color:#323232;">UUID=701c73d7-58b5-4f90-b205-0bb56a8f1d96       /               btrfs   subvol=@root    0 0
</span><span style="color:#323232;">UUID=701c73d7-58b5-4f90-b205-0bb56a8f1d96       /home           btrfs   subvol=@home    0 0
</span><span style="color:#323232;">UUID=701c73d7-58b5-4f90-b205-0bb56a8f1d96       /opt            btrfs   subvol=@opt     0 0
</span><span style="color:#323232;">UUID=701c73d7-58b5-4f90-b205-0bb56a8f1d96       /srv            btrfs   subvol=@srv     0 0
</span><span style="color:#323232;">UUID=701c73d7-58b5-4f90-b205-0bb56a8f1d96       /var            btrfs   subvol=@var     0 0
</span>

/efi (or /boot, or /boot/efi, whatever floats your boat) still has to be a separate vfat partition, but all the other mounts are, technically speaking, the same partition mounted many times with a different subvolume set as the target.

Obviously, you don’t need to have all of them separated like this, but it allows you to fine tune the parts of system that do get snapshot.

mambabasa,
@mambabasa@slrpnk.net avatar

How about when I need to reinstall the OS? Will overwriting / not touch /home like with my current set up?

mambabasa,
@mambabasa@slrpnk.net avatar

Also, if I don’t indicate a swap partition during install, would the OS use swap files automatically?

Illecors,

I don’t know, haven’t used Mint in a decade. It’s not difficult to set it up, though.

kalkulat,
@kalkulat@lemmy.world avatar

I think the last time I installed Mint it DID create a swapfile. Don’t use it, so commented that out in FSTAB.

jollyrogue,

I haven’t seen this behavior. As far as I know, the system will run without swap until a swap partition or swap file is created and activated.

  • All
  • Subscribed
  • Moderated
  • Favorites
  • linux@lemmy.ml
  • localhost
  • All magazines
  • Loading…
    Loading the web debug toolbar…
    Attempt #