Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

EXT4 is not a solid state file system. It won't take full advantage of the hardware and it will ware out the drive. So what is the best Solid State File System for Linux? I am looking forward to ButterFS (btrfs), but its not suitable for production systems. I'm also interested to know why you like a particular ssdfs.

share|improve this question
    
Do you have a source stating that ext4 is bad for SSDs? Not trying to be a PITA, just curious. –  ThatGraemeGuy Jun 7 '10 at 15:35
    
@Graeme Donaldson en.wikipedia.org/wiki/Flash_file_system says that ware leveling is done by the file system. –  Rook Jun 7 '10 at 17:37
    
Actually this is a better link saying that non-ssdfs's are bad, although it also goes on to say that some manufactures will use a microcomputer to implement ware leveling. en.wikipedia.org/wiki/Wear_leveling#Rationale –  Rook Jun 7 '10 at 17:45

2 Answers 2

up vote 7 down vote accepted

First and foremost, modern SSD drives and especially the kind I'd use for 'enterprise' workloads have sufficient wear-leveling built in that even poorly behaved filesystems won't seriously degrade the lifespan of the drive itself. Even file-systems that use the same blocks over and over again for metadata operations or the journal won't do this, since the drives are smart enough to move that logical hot-block onto different physical blocks as the drive ages.

A file-system that is good for maximum SSD lifespan will be one that causes a minimum of write I/O operation overhead when writing storage blocks. Overhead generally comes from metadata and journal operations. This is not unique to SSDs though, as those kinds of write amplification features impact rotational media as well.

Where true Solid State Drive oriented file-systems, such as LogFS, come into their own is when they're managing storage that doesn't have wear leveling built in. If you're building storage based off of Compact Flash or SD cards, these filesystems will indeed perform the wear-leveling that modern Solid State Drives do internally. Embedded devices will probably use these file-systems far more often than end-users or server admins.

If you have a real SSD on your hands, it still pays dividends to ensure your legacy rotational media oriented filesystems align block boundaries on logical drive block boundaries. This prevents write amplification due to misaligned writes, which both increases performance and lifespan of the device.

Even on SSDs I still like XFS for my filesystem. But EXT4 looks promising for other workloads. I'm far more confident that fiddling XFS to do block-aligned writes will give me both lifespan and performance than I am confident that experimental file-systems like LogFS will survive the test of time.

share|improve this answer

Wearing out the drive is not addressed by the filesystem, generally. Wear-leveling technology is built into the drive. Make sure you are using a kernel that supports the trim command. This will keep you from experiencing performance issues as the drive ages. I highly recommend staying away OCZ and other 2nd tier brands. I've had good luck with the cheaper MLC intel SSDs with the newest firmware. You will need to install this firmware manually, I don't believe intel is shipping MLC drives with it yet.

I would also consider not writing log files or swap files to this drive if possible.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.