Apakah Itu Ext2, Ext3, Ext4, dan XFS?

blkid command to check known device in your system
Artikel kali ini menjelaskan tentang file system pada Linux. Pada sistem komputer, file system adalah cara penamaan dan kegunaannya adalah untuk mengontrol bagaimana data disimpan dan diambil. Tanpa file system, informasi yang ada di media penyimpanan (disk) hanya akan berbentuk suatu tubuh yang besar tanpa ada cara untuk memberitahu di mana bagian-bagian tubuh itu bekerja. Dari mana dan ke mana mereka akan bekerja juga tidak diketahui. Dengan memilah-milah data ke dalam bagian-bagian kecil, dan memberikan penamaan pada data tersebut, informasi akan lebih mudah diakses dan diidentifikasi. Setiap grup data ini disebut “file”, sedangkan struktur dan logika yang digunakan untuk mengatur grup data berikut nama panggilannya disebut sebagai “file system”.

Ada banyak jenis file system. Setiap file system memiliki struktur dan logika yang berbeda, kecepataan akses data, fleksibilitas, keamanan, ukuran, dan hal lain yang pasti berbeda. Banyak file system sudah didesain untuk digunakan pada aplikasi spesifik, seperti ISO 9660 yang didesain secara spesifik untuk optical disk (DVD atau CD).

Nah, artikel kali ini tidak akan membahas jenis file system secara luas, karena hanya akan menjabarkan jenis-jenis file system yang ada di Linux.

Linux didukung oleh banyak file system, bahkan Linux dapat membaca file system lain yang hanya didukung oleh OS lain, misal file system NTFS atau FAT yang didukung oleh Windows. Namun, secara umum, file system Linux yang terdukung oleh system disk pada block device Linux antara lain adalah ext* (ext2, ext3, dan ext4), XFS, dan lain-lain. Untuk raw flash tanpa flash translation layer (FTL) atau Memory Technology Device (MTD), ada UBIFS, JFFS2, dan YAFFS. Kemudian ada SquashFS yang merupakan file-system read only dan sudah dikompresi.

Untuk lebih memahami file system pada Linux, berikut ini sedikit penjelasan mengenai file system Linux yang berbeda-beda.

Ext2 – Second Extended File System

  • Ext2 diperkenalkan pada tahun 1993 dan dikembangkan oleh Remy Card. Ext2 adalah file system default pertama di beberapa distro Linux seperti RedHat dan Debian.
  • File-system ini dikembangkan untuk mengatasi keterbatasan file-system sebelumnya.
  • Maksimum ukuran file yaitu 16GB – 2TB.
  • Fitur journaling tidak tersedia.
  • Normalnya, file-system ini digunakan oleh media penyimpanan berbasis Flash seperti USB, SD Card, dan lain-lain.

Ext3 – Third Extended File System

  • Ext3 diperkenalkan pada tahun 2001 dan pada tahun yang sama sudah diintegrasikan dengan Kernel 2.4.15 yang memiliki fitur journaling, di mana fitur ini hadir untuk meningkatkan keandalan file-system dan menghilangkan kebutuhan untuk melakukan pengecekan file system setelah proses shutdown yang tidak bersih.
  • Maksimum ukuran file 16GB – 2TB.
  • Menyediakan fasilitas untuk upgrade dari Ext2 ke Ext3 tanpa harus backup dan restore data.

Ext4 – Fourth Extended File System

  • Ext4 adalah kesuksesan dari Ext3.
  • Pada Oktober 2008, Ext4 sebagai file system yang stabil digabungkan ke dalam Kernel 2.6.28.
  • Maksimum ukuran file 16GB – 16TB.
  • File system Ext4 memiliki opsi untuk mematikan fitur journaling.
  • Fitur lainnya juga ada seperti Sub Directory Scalability, Multiblock Allocation, Delayed Allocation, Fast FSCK, dan lain-lain.

XFS

  • Didesain oleh Silicon Graphics, Inc pada tahun 1993
  • Support journaling metadata dan memfasilitasi recovery cepat.
  • XFS dapat didefrag dan diperbesar bahkan ketika sedang dimounting dan dalam bentuk partisi aktif (tidak harus di-unmount).
  • Sangat scalable dan performance tinggi.
  • Optimasi paralel pada I/O.
  • Sudah menjadi file system default dari RHEL 7.

JFS – Journaled File System

  • Journaling file system 64-bit yang dikembangkan oleh IBM.
  • Memiliki beberapa versi berbeda untuk AIX, eComStation, OS/2.
  • Mendukung journaling sejak awal dibuat, bukan sebagai fitur tambahan pada file system (seperti pada ext3).
  • Mendukung fitur B+ Tree, yaitu fitur percepatan saat lookup direktori.
  • Menggunakan group alokasi yang membantu JFS untuk meningkatkan performa I/O.
  • Pada Linux, JFS muncul jika package JFSutils diinstall. Jika tidak diinstall (seperti pada LiveCD), file system ini tidak didukung oleh OS tersebut.

ReiserFS

  • Didesain dan diimplementasikan oleh tim Namesys yang dipimpin oleh Hans Reiser.
  • FS ini mendukung Linux (tanpa dukungan quota), dan diperkenalkan pada versi kernel 2.4.1 sebagai journaling file system yang dimasukkan ke dalam kernel standard.
  • ReiserFS adalah default file system untuk Elive, Xandros, Linspire, GoboLinux, dan distro Yoper Linux.
  • Sebelumnya pernah menjadi file system default di SUSE Linux Enterprise, sebelum pihak Novell memutuskan untuk berpindah ke ext3 pada 12 Oktober 2006.

Btrfs

  • File system yang berawal dari prinsip COW atau copy-on-write.
  • Didesain oleh Oracle Corporation untuk penggunaan dalam Linux.
  • Pengembangan Btrfs dimulai sejak 2007, dan per Agustus 2014, file system pada format on-disk ini sudah versi stabil.
  • Fiturnya bermacam-macam, dan bisa dilihat pada tautan ini.

Kira-kira itulah beberapa perkenalan untuk file system yang umum digunakan pada Linux. Namun, yang benar-benar sering digunakan mungkin hanya keluarga ext* dan XFS.

Leave a Reply

Your email address will not be published. Required fields are marked *