Pages

Wednesday, 26 February 2014

Why Linux Doesn’t Need Defragmenting?

If you’re a Linux user, you’ve probably heard that you don’t need to  defragment your Linux file systems. You’ll also notice that Linux  distributions don’t come with disk-defragmenting utilities. But why is  that?

 To understand why Linux file systems don’t need  defragmenting in normal use – and Windows ones do – you’ll need to  understand why fragmentation occurs and how Linux and Windows file  systems work differently from each other.

What Fragmentation Is?

Many Windows users, even inexperienced ones, believe that on regular De-fragmentation of their file systems will speed up their computer. What many  people don’t know is why this is!

 In short, a hard disk drive  has a number of sectors on it, each of which can contain a small piece  of data. Files, particularly large ones, must be stored across a number  of different sectors. Let’s say you save a number of different files to  your file system. Each of these files will be stored in a contiguous  cluster of sectors. Later, you update one of the files you originally  saved, increasing the file’s size. The file system will attempt to store  the new parts of the file right next to the original parts.  Unfortunately, if there’s not enough uninterrupted room, the file must  be split into multiple pieces – this all happens transparently to you.  When your hard disk reads the file, its heads must skip around between  different physical locations on the hard drive to read each chunk of  sectors — this slows things down.

De-fragmentation is an intensive  process that moves the bits of files around to reduce fragmentation,  ensuring each file is contiguous on the drive.

 Of course, this  is different for solid state drives, which don’t have moving parts and  shouldn’t be defragmented – defragmenting an SSD will actually reduce  its life. And, on the latest versions of Windows, you don’t really need  to worry about defragmenting your file systems – Windows does this  automatically for you.

How Windows File Systems Work?

  Microsoft’s old FAT file system – last seen by default on Windows 98 and  ME, although it’s still in use on USB flash drives today – doesn’t  attempt to arrange files intelligently. When you save a file to a FAT  file system, it saves it as close to the start of the disk as possible.  When you save a second file, it saves it right after the first file –  and so on. When the original files grow in size, they will always become  fragmented. There’s no nearby room for them to grow into.

  Microsoft’s newer NTFS file system, which made its way onto consumer PCs  with Windows XP and 2000, tries to be a bit smarter. It allocates more  “buffer” free space around files on the drive, although, as any Windows  user can tell you, NTFS file systems still become fragmented over time.

 Because of the way these file systems work, they need to be  defragmented to stay at peak performance. Microsoft has alleviated this  problem by running the defragmentation process in the background on the  latest versions of Windows.

How Linux File Systems Work?

  Linux’s ext2, ext3, and ext4 file systems – ext4 being the file system  used by Ubuntu and most other current Linux distributions – allocates  files in a more intelligent way. Instead of placing multiple files near  each other on the hard disk, Linux file systems scatter different files  all over the disk, leaving a large amount of free space between them.  When a file is edited and needs to grow, there’s usually plenty of free  space for the file to grow into. If fragmentation does occur, the file  system will attempt to move the files around to reduce fragmentation in  normal use, without the need for a defragmentation utility.



  Because of the way this approach works, you will start to see  fragmentation if your file system fills up. If it’s 95% (or even 80%)  full, you’ll start to see some fragmentation. However, the file system  is designed to avoid fragmentation in normal use.

 If you do  have problems with fragmentation on Linux, you probably need a larger  hard disk. If you actually need to defragment a file system, the  simplest way is probably the most reliable: Copy all the files off the  partition, erase the files from the partition, then copy the files back  onto the partition. The file system will intelligently allocate the  files as you copy them back onto the disk.

0 comments:

Post a Comment