This might be a really stupid noob question, but I am looking to move to Linux from Windows/Mac, and am about to install an SSD into my very old test machine for Linux distros.

You might have seen my recent post asking for recommends: it has the hardware specs of my test box, and I’ve updated it with the list of distros I intend to try.

My test box still has a working HDD in it, so no action is required immediately.

But my question is: once I decide on a distro and start moving machines over to Linux, what kind of manual care do I have to put in to maintain my SSD drives, if any?

For each box with a SSD drive and Linux as the OS, do I need to do TRIM manually, do I need to turn it on for a “set and forget” type scenario, or are recent and regularly upgraded distros able to spot a SSD and do the necessary without my intervention?

I guess what I’m really asking is: is SSD TRIM support pretty much standard now across distros, or is it something I need to investigate individually for each distro I install?

I recognize I may just need to ask this again once I settle on a distro, but since I’m trying so many – and may fully install more than one – I thought I’d get a jump on it.


EDITED TO ADD: Many thanks to all who took the time to answer. Now I know exactly what to read up on, and if necessary, look up how to do manually for whatever distro(s) I settle on. I -really- appreciate the help. Thank you!

50 points
*

Trim support is standard. Any kernel released in the past 15 years or so will have trim support built in. So that’s not something you should worry about.

How trimming is triggered is another matter, and is distro dependent. On Arch and Debian at least there is a weekly systemd timer that runs the fstrim command on all trimmable filesystems. You can check it if’s enabled with: systemctl list-unit-files fstrim.timer. I can’t tell how other distributions handle that. On Debian derived ones, I imagine it’s similar, on something like Slackware, which is systemd-less and more hands-off in its approach, you may have to schedule fstrim yourself, or run it manually occasionally.

There is also the discard mount option that you can add in /etc/fstab, which enables automatic synchronous trimming every time blocks are deleted, but its use is discouraged because it carries a performance penalty.

Hope that answers your question.

permalink
report
reply
9 points

Yes, this helps tremendously. Thank you so much for taking the time to write out not just the info, but all the terminal instructions for this noob. Much appreciated!

permalink
report
parent
reply
7 points

the Arch wiki has some info. Not too sure but i think enabling the systemd timer is enough.

permalink
report
reply
5 points

If I may, what’s trim?

permalink
report
reply
12 points
*

Excellent question, and for people who have SSDs it’s worth knowing the answer.

Very simply, SSDs store data differently than HDDs, and when a file is removed, sectors on SSDs have to be explicitly cleared instead of simply waiting to be overwritten like on HDDs. Not doing so on a regular basis decreases the lifespan of the SSD. Crucial (a SSD manufacturer) explains it here much better than I can:

https://www.crucial.com/articles/about-ssd/what-is-trim

permalink
report
parent
reply
2 points

I have never read much about trim before. Now I’m curious about something: if an ssd was trimmed, is all deleted data lost? Is filling an ssd with random data unnecessary if we want so safely delete something?

permalink
report
parent
reply
3 points

What exactly happens when you issue a TRIM depends on the SSD and how much contiguous data was trimmed. Some drives guarantee TRIM-to-zero, but there’s still no guarantee that the data is actually erased (it could just marked as inaccessible to be erased later). In general you should think of it more as a hint to the drive that these bytes are no longer needed, and that the drive firmware can do whatever it likes with that information to improve its wear-levelling ability.

Filling an SSD with random data isn’t even guaranteed to securely erase everything, as most SSDs are overprovisioned (they have more flash cells than the drive’s reported capacity, used for wear leveling and the likes). even if you overwrite the whole drive with random bytes, there’s a pretty good chance that a number of sectors won’t be overwritten, and the random bytes would end up going to a previously unused sector.

Nowadays, if you want to wipe a drive (be it solid state or spinning rust), you should probably be using secure erase - it’s likely to be much faster than simply overwriting everything, and it’s actually guaranteed to make all the data irrecoverable.

permalink
report
parent
reply
0 points
*

deleted by creator

permalink
report
parent
reply
4 points

There are some differences between distros as to whether TRIM is enabled by default or not (I’ve read Ubuntu enables it by default, but Debian does not). That said, depending on what file-system your ssd is formatted with it may be enabled by default at that level. The most-often recommended file-systems for SSDs are Btrfs and F2FS, both of which support and enable TRIM by default (as of Linux 6.2 for Btrfs, so if you are running an older kernel version you might need to manually enable it). I think most distro installers support using Btrfs as the main file-system, but F2FS is a bit more hit and miss I think. Safest bet would be to investigate once you settle on a distro, but support should be pretty standard, even if it’s not enabled by default.

permalink
report
reply
5 points

The most-often recommended file-systems for SSDs are Btrfs and F2FS, both of which support and enable TRIM by default (as of Linux 6.2 for Btrfs, so if you are running an older kernel version you might need to manually enable it).

This is great to know on multiple levels because in Windows it is triggered from the OS, I think as a weekly task, and NTFS has little to do with it as far as I know.

It’s also good to know that support is pretty standard now, as a lot of what I found online was just old and the rest assumed I’d already be familiar with it. Bad assumption, lol.

I don’t know enough to have a preference one way or another for a specific file system, so I can just start with Btrfs and go forward with that. I can also read up on Btrfs further on its own, which I now know to do.

Safest bet would be to investigate once you settle on a distro

Absolutely. But this gets me started, and pointed in the right direction. Many thanks.

permalink
report
parent
reply
7 points
*

This is a bit of misinformation. There is no evidence other filesystems have any downsides on an SSD. Use the default choice of your distribution. Roughly nobody uses F2FS on desktops. EXT4 is entirely reasonable and supports TRIM.

permalink
report
parent
reply
5 points

XFS supports trim too, and is arguably the highest performing filesystem for NVMEs in terms of multi-theaded use-cases. BTRFs is among the slowest filesystems for NVMEs both in IOPS and sequential metrics.

permalink
report
parent
reply
0 points

Ext4 seems to be the default across the distros I’ve looked at so if I can just run with that, all the better. Thank you for pointing this out, much appreciated.

permalink
report
parent
reply

not sure about manual but on ArchLinux and NixOS, TRIM can be automatically handled with BTRFS options:discard=async:

  • Enables discarding of freed file blocks in large chunks before queuing for TRIM.

not sure if this helps but I’ll be open sourcing my NixOS build and configuration.nix files in a bit(after school schedule stablizes)

permalink
report
reply

Linux

!linux@lemmy.ml

Create post

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word “Linux” in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

  • Posts must be relevant to operating systems running the Linux kernel. GNU/Linux or otherwise.
  • No misinformation
  • No NSFW content
  • No hate speech, bigotry, etc

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

Community stats

  • 8.4K

    Monthly active users

  • 6.3K

    Posts

  • 172K

    Comments