SSD lifespan on Eee PC
Q I own an Eee PC 900 on which I have recently installed Ubuntu Netbook Remix 9.04. Besides now having Ubuntu's flexibility and updates at my fingertips, I am also in love with the NBR interface, which works surprisingly well after some minor tweaks (including a patched kernel). However, I have read some worrying posts about NBR (and other alternate distros) not being very easy on the Eee PCs built-in solid state disk. People suggest all kinds of precautions to be taken when installing such a distro, including: 1 - Never choose to use a journalling file system on the SSD partitions. 2 - Never use a swap partition on the SSD. 3 - Always edit your new installation fstab to mount the SSD partitions with noatime. Or 4 - Never log messages or errors to the SSD.
There are other suggestions too, concerning the behaviour of certain applications, like Firefox's cache. So, can you tell me if any (or all) of these suggestion make sense? What seems weird to me is that a default install of NBR on the 900 gives me an ext3 filesystem, a swap partition and mounts with relatime. Don't they care about SSD lifespan at Canonical, or is the whole issue just rubbish?
A These fears are all based on the fact that the SSD is essentially flash memory, which has a limited write cycle. But it is not used in the same was as flash memory is used in memory cards and USB sticks. The problem with flash memory is that each cell can only handle a limited number of write operations, USB devices and memory cards are normally rated for between 100,000 and a million writes, depending on the quality of the individual device. This sounds a lot, but some parts of a disk are written to very frequently, like FAT tables and filesystem journals. A damaged journal can be worked around, but a corrupt file allocation table on a FAT filesystem is close to terminal, and this is the filesystem used by removable flash devices.
SSDs are different for a number of reasons. They generally use higher-quality components, netbooks don't use FAT filesystems and, most importantly, SSDs incorporate wear levelling. This means that the load is spread across the 'disk' and writes are not repeatedly made to the same sector. I have been using journalled filesystems (ext3 and xfs) and swap on my Eee PC900 for over a year. It is used every day and runs Gentoo testing so packages are updated almost daily. Combine that with extensive email and web usage (mailer caches are written to as much as browser caches) and the only disk errors I've had were on the SD card, the only component that doesn't use wear levelling (and was of unknown make and quality). You will need a swap partition (or suitable file) if you want to hibernate your laptop.
Bear in mind that the Eee comes with a two-year warranty, and Asus isn't likely to include technology that is likely to fail in that timeframe. Canonical isn't in the business of breaking hardware (nor is any other distro maker), although I would question the use of atime when mounting a filesystem, but that is for performance reasons more than reliability - I use noatime on hard disks too. Apart from that, I would be happy to use the NBR setup.
Follow us on Identi.ca or Twitter