I keep hearing that this is a huge no-no. Why is this? I run Ubuntu mostly so it doesn't affect me, but I was just wondering.
feedback
|
|
Solid state drives are based on flash memory, which age very differently than standard spinning platter-based hard drives. Each sector has a limited number of write cycles, so the drives include wear-leveling features that allows the drive to last longer by essentially fragmenting the drive on purpose. The read times are not greatly improved by defragmenting as they are in standard drives, so there is no real gain in defragmentation, but by doing so, you are increasing the number of writes to the drive, thereby decreasing the drive life. | |||||
|
feedback
|
|
Defragmenting puts your sectors near each other which is helpful for a disk that spins around. However, this is useless on an SSD which has constant access time for any sector. Defragmenting just causes extra writes on a disk (SSDs have a limited number of writes due to their design) | |||
|
feedback
|
|
Note that there shouldn't be any technical reason for not "being able to defragment a solid state disk", in the sense that you could start a defragmenter program and run it against the disk. But doing so doesn't have the effect it does on non-solid state disks, as moving the clusters together won't actually speed up the disk. On the other hand, what you will do is perform lots of unnecessary writes on the disk, and this will shorten, albeit slightly, the life-span of the disk. Additionally, many solid-state disks does optimizations to lessen this problem by reducing repeated writes to the same area, and this is transparent to the outside system, in which case the clusters might not be moved together at all but instead spread out over the disk. This technique is typically "wear leveling". If a defragmenter program refuses to defragment a solid state disk (or even just list it as a disk you can select), I'd wager that it's basically a software refusal to do so, just to avoid the problems outlined above. Note that I don't know enough about the underlying protocols used to defragment a disk, so there might very well be a hard block from a solid state disk to accept defragment commands, if there are such things. The reasons for this, however, are the ones described here. | |||
|
feedback
|
|
Defragging will lower the live expectancy of your drive by performing unnecessary passes over a drive with a limited life-span. | |||
|
feedback
|