FAT, NTFS, ext4, dan lainnya: Memahami perbedaan dan keunggulan masing-masing

 

Macam-macam File System

Pernahkah kamu mendengar tentang "File System"?

Bayangkan hardiskmu sebagai sebuah gudang raksasa. Di dalamnya, terdapat berbagai macam data, seperti foto, video, dokumen, dan lain sebagainya. Nah, "File System" inilah yang bertugas untuk mengatur dan mengelompokkan semua data tersebut agar mudah ditemukan dan digunakan. Dialah yang membantu kita untuk menyimpan dan menemukan barang dengan mudah.

File System, atau Sistem Berkas, adalah sebuah sistem yang mengatur bagaimana data disimpan dan diorganisir pada perangkat penyimpanan, seperti hardisk, flashdisk, dan lainnya. Ia ibarat rak-rak dan lemari di gudang raksasa tadi.

Ketika kamu melakukan format pada perangkat penyimpanan, kamu sebenarnya memilih jenis "File System" yang ingin digunakan. Ada beberapa jenis File System yang populer, seperti NTFS, FAT32, dan exFAT, masing-masing dengan kelebihan dan kekurangannya sendiri.

Pengertian File System

Sistem Berkas pada Disk Laptop dan Komputer
Setiap disk yang terpasang di laptop atau komputer, baik Windows, Mac OS, maupun Linux, menggunakan sistem berkas untuk mengatur penyimpanan dan pengelolaan data. Sistem berkas ini ibarat rak-rak dan lemari yang digunakan untuk menyimpan dan mengorganisir barang-barang di gudang.

Berikut beberapa sistem berkas yang umum digunakan:

Windows: NTFS (New Technology File System)
Linux       : EXT (EXTended File System)
Mac OS    : ApFS (Apple File System)

Pengertian File System itu adalah suatu cara untuk memisahkan data yang ada pada disk/drive dan dibagi menjadi beberapa bagian. Selain itu, berkas sistem juga menyediakan cara menyimpan data-data tersebut – misalnya seperti nama file, hak akses, dan berbagai atribut lainnya. Berkas sistem juga dapat melakukan indeks dari semua data yang tersimpan. Sehingga, sistem operasi dapat mengetahui letak file yang anda simpan.

File system merupakan fondasi penting dalam penyimpanan data pada disk atau drive. Ia ibarat lemari besar yang menyimpan berbagai macam barang, di mana setiap barang memiliki tempatnya sendiri dan terorganisir dengan rapi.

Fungsi Utama File System

  • Memisahkan data: File system membagi disk menjadi beberapa bagian, memungkinkan penyimpanan data dari berbagai sumber secara terorganisir.
  • Menyimpan informasi: File system menyimpan informasi penting tentang data, seperti nama file, hak akses, dan atribut lainnya.
  • Melakukan pengindeksan: File system membuat indeks dari semua data yang disimpan, membantu sistem operasi menemukan file dengan cepat dan mudah.

Hubungan File System dan Sistem Operasi

Agar sistem operasi dapat membaca dan menampilkan data pada disk, sistem operasi harus memahami file system yang digunakan. Jika sistem operasi tidak kompatibel dengan file system, maka data tidak akan terlihat dan Anda perlu menyediakan driver khusus agar sistem operasi dapat bekerja.

Manfaat File System

  • Pengorganisasian: File system membantu mengatur data secara rapi dan efisien, memudahkan pencarian dan akses file.
  • Efisiensi: File system mengoptimalkan penggunaan ruang penyimpanan dan meningkatkan kinerja akses data.
  • Keamanan: File system menyediakan mekanisme keamanan untuk melindungi data dari akses yang tidak sah.

Macam-macam File System 

FAT (File Allocation Table)

FAT (File Allocation Table) adalah salah satu file system tertua dan paling sederhana. Awalnya dikembangkan untuk MS-DOS dan masih digunakan pada banyak perangkat penyimpanan removable. Dua versi utama dari sistem ini adalah FAT16 dan FAT32. FAT menggunakan tabel alokasi file untuk melacak lokasi file pada disk.  Namun, ia tidak memiliki beberapa fitur lanjutan seperti izin file dan journaling, sehingga kurang cocok untuk sistem operasi modern. FAT 16 diperkenalkan pada tahun 1987 dengan DOS 3.31, sedangkan FAT32 diperkenalkan dengan Windows 95 OSR2 (MS-DOS 7.1) pada tahun 1996.

File system FAT (File Allocation Table) pertama kali dikembangkan oleh Bill Gates dan Marc McDonald pada tahun 1976-1977. Pada saat itu, FAT menjadi sistem berkas utama bagi berbagai sistem operasi, di antaranya Digital Research Disk Operating System (DR-DOS), OpenDOS, FreeDOS, MS-DOS, IBM OS/2 versi 1.1, dan Microsoft Windows hingga versi Windows Me.

FAT telah distandardisasikan untuk disket sebagai ECMA-107 dan ISO/IEC 9293. Standarisasi ini hanya mencakup FAT12 dan FAT16 tanpa dukungan nama file panjang. Hal ini disebabkan karena beberapa bagian standar nama file panjang dalam file system FAT telah dipatenkan.

Versi

Ada beberapa versi dari sistem berkas FAT, yang dibedakan dari berapa banyak unit alokasi yang didukungnya, yakni sebagai berikut:

  • FAT12
  • FAT16
  • FAT32
  • exFAT

FAT12

FAT12 adalah sistem berkas yang menggunakan ukuran unit alokasi yang memiliki batas hingga 12-bit, sehingga hanya dapat menyimpan maksimum hingga 212 unit alokasi saja (4096 buah). Sistem berkas ini adalah sistem berkas asli dari FAT yang pertama kali digunakan dalam sistem operasi MS-DOS.

Karena beberapa sistem operasi Windows menggunakan ukuran unit alokasi sistem berkas yang dibuat berdasarkan ukuran sektor (kelipatan 512 byte, dari 1 sektor hingga 16 sektor), FAT12 memiliki batasan pada kapasitasnya, yakni hingga 32 Megabyte. Karena itulah, FAT12 umumnya hanya digunakan sebagai sistem berkas untuk media penyimpanan floppy disk.

Keunggulan FAT12:

  • Sederhana dan mudah diimplementasikan.
  • Kompatibel dengan berbagai sistem operasi, terutama DOS dan Windows versi lama.
  • Efisien untuk media penyimpanan berkapasitas kecil.

Kekurangan FAT12:

  • Kapasitas penyimpanan terbatas, tidak cocok untuk media penyimpanan modern.
  • Ukuran unit alokasi yang kecil dapat menyebabkan fragmentasi data, yang dapat memperlambat kinerja.
  • Keamanan data relatif lemah dibandingkan sistem berkas modern.

Sistem Operasi yang Mendukung FAT12:

  • MS-DOS
  • Windows 95 (versi awal)
  • Windows NT 3.1
  • Windows NT 3.5
  • Windows NT 4.0
  • Windows 2000
  • Windows XP
  • Windows Vista
  • OS/2
  • FreeDOS
  • OpenDOS
  • DR-DOS
  • Banyak sistem operasi DOS dan Unix lainnya

FAT16

FAT16 adalah sistem berkas yang menggunakan unit alokasi yang memiliki batas hingga 16-bit, sehingga dapat menyimpan hingga 216 unit alokasi (65536 buah). Sistem berkas ini memiliki batas kapasitas hingga ukuran 4 Gigabyte saja. Ukuran unit alokasi yang digunakan oleh FAT16 bergantung pada kapasitas partisi yang hendak diformat: jika ukuran partisi kurang dari 16 Megabyte, maka Windows akan menggunakan sistem berkas FAT12, dan jika ukuran partisi lebih besar dari 16 Megabyte, maka Windows akan menggunakan sistem berkas FAT16. 

Keunggulan FAT16:

  • Kapasitas penyimpanan lebih besar dibandingkan FAT12.
  • Mendukung nama berkas panjang (hingga 255 karakter).
  • Kompatibel dengan berbagai sistem operasi.

Kekurangan FAT16:

  • Kapasitas penyimpanan terbatas dibandingkan sistem berkas modern.
  • Ukuran unit alokasi yang besar dapat menyebabkan fragmentasi data, yang dapat memperlambat kinerja.
  • Keamanan data relatif lemah dibandingkan sistem berkas modern.

Sistem Operasi yang Mendukung FAT16:

  • Windows 95
  • Windows 98
  • Windows NT 3.X
  • Windows NT 4.0
  • Windows 2000
  • Windows ME
  • Windows XP
  • Windows Vista
  • MS-DOS (Versi 4.x keatas)
  • OS/2
  • FreeDOS
  • OpenDOS
  • DR-DOS
  • Banyak sistem operasi DOS dan Unix lainnya

FAT32

FAT32 adalah singkatan dari File Allocation Table 32-bit. Ini adalah sistem file yang merupakan pengembangan dari FAT16, dirancang untuk mengatasi beberapa keterbatasan pendahulunya. FAT32 menawarkan kapasitas penyimpanan yang lebih besar dan fleksibilitas yang lebih baik, membuatnya menjadi pilihan populer untuk berbagai perangkat penyimpanan.

Keunggulan FAT32:

Kapasitas Penyimpanan Lebih Besar: Dibandingkan dengan FAT16, FAT32 mendukung partisi dengan kapasitas hingga 32 TB, meskipun dalam praktiknya jarang digunakan untuk partisi sebesar itu.

Ukuran Cluster Lebih Fleksibel: FAT32 memungkinkan ukuran cluster yang lebih kecil, terutama untuk partisi berkapasitas rendah, sehingga mengurangi pemborosan ruang penyimpanan.

Kompatibilitas Luas: FAT32 kompatibel dengan berbagai sistem operasi, termasuk Windows, macOS, dan banyak sistem operasi berbasis Linux.

Sederhana dan Efisien:** FAT32 memiliki struktur yang relatif sederhana, membuatnya mudah diimplementasikan dan efisien dalam penggunaan.

Kekurangan FAT32:

Batasan Ukuran File: Meskipun kapasitas partisi besar, FAT32 memiliki batasan ukuran file individu sebesar 4 GB. Ini berarti Anda tidak dapat menyimpan file tunggal yang lebih besar dari 4 GB dalam partisi FAT32.

Keamanan: FAT32 tidak menawarkan fitur keamanan yang canggih seperti NTFS, seperti enkripsi atau izin file yang rinci.

Fragmentasi: Seperti sistem file FAT lainnya, FAT32 rentan terhadap fragmentasi, terutama pada partisi yang sering digunakan untuk menyimpan dan menghapus file.

Penggunaan FAT32:

Perangkat Penyimpanan Eksternal: FAT32 sering digunakan untuk memformat flash drive, kartu SD, dan hard drive eksternal karena kompatibilitasnya yang luas dan kemudahan penggunaannya.

Partisi Sistem Operasi: Beberapa sistem operasi, terutama yang lebih tua, masih menggunakan FAT32 untuk partisi sistem. Namun, untuk sistem operasi modern seperti Windows 10, NTFS adalah pilihan yang lebih umum.

Perangkat Portabel: Perangkat portabel seperti kamera digital, pemutar MP3, dan konsol game sering menggunakan FAT32 untuk menyimpan data.

Kapan Menggunakan FAT32?

Anda sebaiknya menggunakan FAT32 jika:

  • Anda membutuhkan kompatibilitas dengan berbagai perangkat dan sistem operasi.
  • Anda tidak perlu menyimpan file yang sangat besar (lebih dari 4 GB).
  • Anda menggunakan perangkat penyimpanan dengan kapasitas yang relatif kecil.

Kapan Menggunakan NTFS?

Anda sebaiknya menggunakan NTFS jika:

  • Anda membutuhkan keamanan data yang lebih tinggi.
  • Anda perlu menyimpan file yang sangat besar.
  • Anda menggunakan sistem operasi Windows modern.

Sistem Operasi yang Mendukung FAT32

Microsoft Windows: Semua versi Windows modern, mulai dari Windows 95 OSR2 hingga Windows 11, mendukung FAT32.

macOS: Sistem operasi macOS dari Apple juga sepenuhnya mendukung FAT32, memungkinkan Anda untuk membaca dan menulis ke perangkat yang diformat dengan FAT32.

Linux: Hampir semua distribusi Linux mendukung FAT32 secara native. Ini termasuk distribusi populer seperti Ubuntu, Debian, Fedora, dan CentOS.

Sistem Operasi Lainnya: Banyak sistem operasi lainnya, termasuk berbagai varian BSD, Android (untuk penyimpanan eksternal), dan bahkan beberapa konsol game, juga mendukung FAT32.

exFAT

exFAT, kependekan dari Extended File Allocation Table atau sering disebut FAT64, adalah sebuah sistem berkas modern yang dirancang khusus untuk perangkat penyimpanan berbasis flash seperti flash drive, kartu SD, dan SSD eksternal. Dibandingkan dengan pendahulunya, FAT32, exFAT menawarkan fleksibilitas dan kapasitas yang jauh lebih besar, menjadikannya pilihan populer untuk perangkat-perangkat portabel saat ini.

Keunggulan exFAT

  • Kapasitas Tanpa Batas: Tidak seperti FAT32 yang memiliki batasan ukuran file 4GB, exFAT tidak memiliki batasan ukuran file yang signifikan, memungkinkan Anda menyimpan file-file besar seperti video beresolusi tinggi atau game dengan mudah.
  • Kinerja Optimal: exFAT dirancang untuk memaksimalkan kinerja pada perangkat penyimpanan flash, sehingga waktu akses dan transfer data menjadi lebih cepat.
  • Kompatibilitas Luas: Meskipun bersifat proprietary, exFAT didukung oleh berbagai sistem operasi populer, termasuk Windows, macOS, dan banyak distribusi Linux.
  • Struktur Data Efisien: exFAT memiliki struktur data yang lebih sederhana dibandingkan NTFS, membuatnya lebih cocok untuk perangkat dengan sumber daya terbatas seperti flash drive.

Kekurangan exFAT

  • Perangkat yang menggunakan file system exFAT tidak bisa menggunakan kemampuan ReadyBoost milik Windows Vista (namun pada Windows 7, Microsoft sudah membuat file system exFAT yang baru dengan dukungan ReadyBoost).
  • Status lisensi yang belum jelas. Akan tetapi, Microsoft telah mempatenkan beberapa bagian dari file system FAT.
  • Tidak bisa diakses oleh sistem-sistem operasi Windows terdahulu, sebelum Windows Vista Service Pack 1 atau Windows CE 6.0.
  • Belum tersedia implementasi dalam proyek open source.

NTFS (NT File System)

NTFS adalah sistem penyimpanan data yang dikembangkan oleh Microsoft. Sistem ini mulai digunakan pada Windows NT 3.1 dan menjadi sistem penyimpanan utama untuk Windows sejak saat itu. NTFS lebih canggih daripada sistem penyimpanan lama seperti FAT. Bahkan, komputer dengan sistem operasi Linux dan BSD juga bisa menggunakan NTFS.

Sistem operasi Windows bisa mengubah sistem penyimpanan dari FAT menjadi NTFS tanpa harus menyalin ulang semua data. NTFS menyimpan informasi tambahan tentang file-file di komputer, sehingga komputer bisa bekerja lebih cepat saat mencari data.

Berbeda dengan sistem penyimpanan lainnya, NTFS bisa melindungi data dengan kata sandi, memadatkan file, dan menyimpan beberapa versi file. Selain itu, NTFS juga bisa membuat cadangan data komputer tanpa mengganggu aktivitas yang sedang berjalan.

Sistem operasi lain seperti Linux dan BSD juga dapat menggunakan NTFS. Untuk membaca dan menulis data pada NTFS di Linux, digunakan perangkat lunak bebas dan terbuka bernama NTFS-3G. Sementara itu, BSD menggunakan driver NTFS-3G.

Windows dapat mengubah sistem file dari FAT32, FAT16, atau FAT12 menjadi NTFS tanpa harus menyalin semua data ulang. Proses ini dilakukan menggunakan perintah "convert".

Metadata dan Kinerja:

NTFS menyimpan informasi tambahan tentang file-file (disebut metadata) dalam file-file tersembunyi. Informasi ini membantu komputer bekerja lebih cepat saat mengakses data.

Fitur Tambahan NTFS:

Selain kecepatan, NTFS memiliki fitur-fitur yang tidak dimiliki oleh sistem file seperti FAT dan HPFS:

  • Access Control List: NTFS dapat mengatur siapa saja yang boleh melihat atau mengubah file.
  • Enkripsi: File dapat dienkripsi untuk keamanan.
  • Kompresi: File dapat dimampatkan untuk menghemat ruang penyimpanan.
  • File Khusus: NTFS mendukung jenis file khusus seperti file yang hanya berisi sebagian data (sparse files).
  • Cadangan Otomatis: NTFS dapat membuat salinan cadangan sistem secara otomatis.
  • Jurnal Sistem File: NTFS mencatat perubahan pada sistem file, sehingga dapat memulihkan data jika terjadi kesalahan.

Kekurangan NTFS

Meskipun NTFS memiliki banyak kelebihan, sistem file ini juga memiliki beberapa kekurangan yang perlu diperhatikan:

Kompleksitas: Struktur NTFS jauh lebih kompleks dibandingkan FAT32. Kompleksitas ini bisa menyebabkan kinerja yang lebih lambat pada perangkat keras yang lebih tua atau dengan kapasitas penyimpanan yang kecil.

Overhead: NTFS membutuhkan lebih banyak ruang penyimpanan untuk menyimpan metadata (informasi tambahan tentang file). Ini berarti kapasitas penyimpanan yang sebenarnya akan sedikit lebih kecil dibandingkan dengan sistem file lain seperti FAT32.

Fragmentasi: NTFS juga rentan terhadap fragmentasi, terutama jika sering melakukan operasi penulisan dan penghapusan file. Fragmentasi dapat memperlambat kinerja akses data.

Ketergantungan pada Sistem Operasi: NTFS lebih erat terikat dengan sistem operasi Windows. Meskipun dapat digunakan pada sistem operasi lain, kompatibilitas dan fitur-fiturnya mungkin tidak selengkap saat digunakan pada Windows.

Kurang Cocok untuk Perangkat Portabel: Untuk perangkat portabel seperti flash drive yang sering digunakan di berbagai sistem operasi, FAT32 atau exFAT mungkin lebih cocok karena kompatibilitasnya yang lebih luas.

EXT (Extended File System)

EXT, atau Extended File System, adalah sistem file yang dirancang khusus buat OS Linux. Tujuan utamanya adalah ngelawan keterbatasan ukuran file maksimal yang waktu itu cuma 64 MB. Dengan nge-revamp struktur metadata, EXT berhasil nambahin ukuran file maksimal jadi 2 GB, sekaligus nambah panjang nama file jadi 255 karakter.

Remy Card, si otak di balik EXT, ngefans berat sama UFS, jadi dia ngambil beberapa fitur keren dari sana buat diadopsi ke EXT. Meskipun Linux support banyak jenis filesystem, EXT tetap jadi favorit karena dirancang khusus buat kernel Linux.

Walaupun EXT berhasil ngatasin kelemahan utama dari Minix (filesystem yang dipake Linux waktu itu), dia masih punya kekurangan di bagian timestamp. EXT cuma bisa nampung satu timestamp per file. Karena itu, pengembangan EXT terus berlanjut, dan di versi-versi berikutnya, fitur-fiturnya makin canggih.

EXT jadi super populer, nggak cuma di kalangan pengguna Linux tapi juga pengguna smartphone Android. Makanya, Android pake Ext4 sebagai filesystem default.

Versi

EXT, meskipun ngelawan batasan Minix, masih punya segudang kekurangan. Makanya, pengembangannya nggak berhenti di situ, dan tiga versi baru muncul yaitu EXT2, EXT3, EXT4. 

EXT2

Yang pertama adalah EXT2, buah karya Remy Card lagi, yang debut di Januari 1993.

Inovasi utamanya adalah data sekarang ditulis dalam blok-blok dengan ukuran sama. Ini bikin performa filesystem naik drastis. Selain itu, pake blok data juga nambahin kapasitas maksimal file jadi 2 TB, dari sebelumnya cuma 2 GB. Panjang nama file tetep 255 karakter.

Tapi, EXT2 juga punya masalah. Yang paling parah adalah nggak ada journaling. Kalau listrik mati pas lagi nulis file ke disk, filesystem bisa rusak parah dan susah banget buat dipulihin.

Di beberapa kasus, nggak ada journaling malah jadi keuntungan. Misalnya, EXT2 lebih cepet dari EXT3. Makanya, masih ada yang pake EXT2 sampe sekarang. Terus, tanpa journaling, beban ke SSD drive juga berkurang. Beberapa perusahaan malah pake EXT2 bareng RAID buat proteksi data.

Kelemahan lain EXT2 adalah fragmentasi data yang tinggi, bikin performa turun. Jadi, pas nulis file, dia dipecah jadi beberapa bagian, terus ditulis di tempat yang beda-beda di hard drive. Ini bikin proses baca jadi lama. Makin banyak data, makin lambat baca/tulisnya.

Karena itu, pengembangan EXT lanjut ke versi berikutnya, EXT3, yang muncul November 2001.

EXT3

EXT3 adalah upgrade dari EXT2. Dia masih pake blok data dengan ukuran sama, dan kapasitas maksimal file tetep 2 TB. Tapi, dia punya fitur baru yang namanya journaling, buat ngurangin risiko kehilangan data

Intinya gini, filesystem bakal catet semua perubahan yang direncanain ke struktur data. Kalau listrik mati mendadak, sistem bisa langsung baca informasi dari "jurnal" dan file-file selamat.

EXT3 punya tiga level journaling

Journal: Semua perubahan, baik metadata maupun data user, ditulis ke jurnal. Ini jamin banget recovery filesystem kalau listrik mati. Tapi, performa filesystem jadi agak turun.

Writeback: Metadata dulu yang ditulis ke log, baru data ditulis ke filesystem. Nggak ada sinkronisasi antara metadata dan data. Ini level journaling paling cepet karena nggak perlu validasi. Tapi, kalau sistem error, data bisa ilang.

Ordered: Proses nulisnya berurutan: metadata dulu ke log, baru data ke filesystem, terus metadata dihubungin ke file di disk. Kalau listrik mati, cuma file yang lagi ditulis pas itu yang ilang, struktur filesystem aman.

EXT3 jadi populer banget dan dipake sampe versi selanjutnya, EXT4 muncul.

EXT4

EXT4, dirilis tahun 2008, adalah puncak dari evolusi sistem file EXT. Dia ngambil dasar-dasar dari EXT3, tapi ngebut banget (malah lebih kenceng dari EXT2), bisa nampung file sampe 16 GB, dan support drive gede banget, ampe 1 Exabyte!

EXT4 ini penuh inovasi. Kita bahas lebih lanjut.

Fitur-fitur Keren EXT4

Walaupun EXT4 pake konsep dasar EXT3, dia punya banyak fitur baru yang bikin dia jadi super populer.

Pertama, dia pake metode rekaman file berbasis ruang buat ningkatin performa. Jadi, sebelum nulis file ke disk, filesystem langsung ngalokasin area buat dia, terus baru nulis datanya di ujung area itu.

EXT4 juga backward compatible sama EXT2 dan EXT3. Bisa langsung mount EXT3 pake driver EXT4.

Terus, dia punya fitur extents. Bedanya sama versi lama, EXT4 bisa ngelompokkin beberapa blok data jadi satu unit, jadi lebih cepet pas ngakses file gede.

EXT4 juga pinter ngatur blok memori biar nggak banyak fragmentasi. Jadi, pas nulis file, dia milih blok yang deket-deketan biar cepet pas baca.

Selain itu, EXT4 bisa nunda alokasi blok memori sampai pas mau nulis file. Ini buat ngurangin beban cache dan nambahin kecepatan.

EXT4 juga bisa bikin subdirektori tanpa batas tanpa ngelambat. Dia pake struktur data HTree, semacam B-tree tapi buat EXT4.

EXT4 juga punya fitur ngecek integritas data pake journal checksums. Ini bikin sistem lebih aman dan cepe

Ngecek filesystem juga jadi lebih cepet karena dia cuma ngecek blok yang ada datanya.

Terakhir, ada fitur e4defrag buat ngedefrag disk atau file tertentu. Ini bikin sistem lebih lancar dan ngurangin beban prosesor

Pokoknya, EXT4 penuh inovasi keren yang bikin dia super cepat, aman, dan bisa nampung data gede. Makanya, dia jadi favorit banyak orang.

Meskipun EXT4 punya banyak fitur baru dan performa yang meningkat, dia juga punya beberapa kekurangan. Jadi, sebelum kamu pake di disk kamu, sebaiknya bandingkan dulu kelebihan dan kekurangannya.

Kelebihan EXT4

Journaling: Sistem file ini nyimpen jurnal perubahan, jadi kalau ada masalah, kamu bisa pulihin struktur filesystem tanpa kesulitan.

Dukungan enkripsi: Pengguna bisa ngenkripsi data tanpa ngurangin performa.

Stabilitas tinggi: EXT4 bisa ngontrol keadaannya sendiri berkat journal checksums. Selain itu, EXT4 udah terbukti stabil selama lebih dari 10 tahun.

Didukung bawaan di banyak distro: Berarti kamu udah punya semua tools EXT4 secara default. Juga dipake di kartu memori smartphone Android, jadi kamu nggak perlu install software tambahan.

Pengembangan aktif: Sampai sekarang, EXT4 masih terus dikembangkan. Jadi kamu bakal terus dapet fitur-fitur baru.

Fragmentasi rendah: Bikin filesystem jadi super cepat.

Batas inode yang banyak: Inode itu kayak alamat rumah buat file. EXT4 punya banyak inode, jadi kamu bisa bikin file sebanyak-banyaknya tanpa khawatir kehabisan tempat.

Kekurangan EXT4

Kurang support fitur filesystem generasi baru: EXT4 belum support volume management, data deduplication, dll.

Nggak ada verifikasi checksum buat data: Jadi, kalau ada data yang rusak karena hardware, susah buat ketauan.

Skalabilitas kurang: Meskipun kapasitas maksimalnya 1 Exabyte, tapi kalau bikin partisi lebih dari 100 Terabyte, performanya bakal turun drastis.

Belum support kompresi dan enkripsi transparan: Teknologi ini masih tahap eksperimen.

Inode makan banyak tempat: Sampai 10% dari partisi. Kalau alokasi inode pas bikin filesystem kurang, bisa-bisa kamu nggak bisa bikin file baru walaupun masih ada ruang kosong.

ApFS (Apple File System)

APFS, sistem file default di macOS 10.13 ke atas, itu udah kayak level selanjutnya dari filesystem. Bayangin aja, dia punya fitur-fitur keren kayak enkripsi tingkat tinggi, space sharing yang fleksibel, snapshot buat backup instan, dan optimasi performa yang gila-gilaan. Walaupun dirancang khusus buat SSD yang super kencang di Mac baru, APFS juga bisa diajak main di HDD jadul atau external storage

APFS itu asiknya dia ngalokasiin ruang disk secara dinamis. Jadi, kalau kamu punya beberapa volume dalam satu partisi, ruang kosongnya bakal dibagi-bagi otomatis sesuai kebutuhan masing-masing volume. Kamu juga bisa atur sendiri ukuran minimal dan maksimal buat tiap volume. Pokoknya, APFS ini kayak punya hard drive virtual di dalam hard drive fisik.

Apple File System (APFS) pertama kali diumbar di WWDC 2016 sebagai pengganti HFS+ yang udah usang sejak 1998. APFS resmi debut di perangkat iOS 64-bit pada Maret 2017 bareng iOS 10.3, dan di macOS pada September 2017 lewat macOS 10.13.

Apple baru ngasih bocoran sebagian spesifikasi APFS di September 2018, itupun cuma buat akses read-only ke filesystem yang nggak dienkripsi dan nggak pake Fusion Drive. Spesifikasi buat enkripsi software baru dijelasin belakangan.

Fitur

APFS (Apple File System) adalah sistem file modern yang dirancang khusus untuk perangkat Apple. Ditujukan sebagai pengganti HFS+, APFS menawarkan sejumlah fitur menarik yang meningkatkan kinerja, fleksibilitas, dan keamanan perangkat Apple.

Berikut beberapa fitur unggulan APFS:

  • Enkripsi Kuat: APFS mendukung enkripsi penuh pada disk, melindungi data pengguna dari akses yang tidak sah. Enkripsi ini dilakukan secara hardware, sehingga lebih cepat dan aman.
  • Berbagi Ruang Fleksibel: APFS memungkinkan beberapa volume (partisi logis) dalam satu wadah (partisi fisik) untuk berbagi ruang secara dinamis. Ini berarti ruang kosong dalam satu volume dapat digunakan oleh volume lain saat dibutuhkan
  • Snapshot: Fitur ini memungkinkan Anda membuat "snapshot" atau salinan instan dari volume pada suatu titik waktu tertentu. Snapshot sangat berguna untuk backup, pemulihan data, dan pengujian
  • Kinerja Tinggi: APFS dioptimalkan untuk SSD, memberikan kinerja baca dan tulis yang jauh lebih cepat dibandingkan HFS+
  • Metadata yang Efisien: APFS menggunakan struktur data yang lebih efisien untuk menyimpan metadata (informasi tentang file), sehingga mengurangi overhead dan meningkatkan kinerja.
  • Kopian pada Tulis (Copy-on-Write): Fitur ini memungkinkan perubahan pada file dilakukan dengan membuat salinan baru, sehingga mengurangi fragmentasi dan meningkatkan kinerja.
  • Dukungan untuk Ukuran File Besar: APFS mendukung ukuran file yang jauh lebih besar dibandingkan HFS+, sehingga cocok untuk menyimpan file multimedia berukuran besar seperti video 4K dan file arsip.
  • Integrasi dengan Fitur macOS: APFS terintegrasi dengan fitur-fitur macOS seperti Time Machine, FileVault, dan APFS Container.

Keterbatasan

Meskipun APFS punya banyak peningkatan dibanding pendahulunya, HFS+, dia juga punya beberapa kelemahan yang perlu diperhatikan.

Cek Integritas Data yang Minim

APFS nggak ngasih checksum buat data pengguna. Ini berarti dia nggak bisa ngecek kalo data rusak akibat kesalahan hardware. Selain itu, APFS juga belum manfaatin teknologi NVRAM (Non-Volatile Random Access Memory) yang bisa diakses per byte.

Performa di Hard Disk Kurang Joss

Ngelist file dan metadata inode pada APFS jauh lebih lambat kalo dipake di hard disk. Ini karena APFS nyimpen metadata bareng sama data filenya, beda sama HFS+ yang nyimpen metadata di tempat terpisah. Jadi, pas ngelist file, sistem harus bolak-balik baca data, yang bikin proses jadi lama. Ini sih nggak jadi masalah di SSD, tapi di HDD, bisa bikin kesel.

Kompatibilitas Time Machine Sebelum macOS 11

Beda sama HFS+, APFS nggak support hard link ke direktori. Masalahnya, Time Machine di macOS 10.5 sampe 10.15 pake hard link buat backup, jadi nggak bisa pake APFS buat volume backup. Untungnya, macOS 11 Big Sur udah bisa pake APFS buat Time Machine, bahkan diklaim lebih cepet, hemat ruang, dan lebih stabil dibanding pake HFS+.

HFS  (Hierarchical File System)

HFS (Hierarchical File System) adalah sistem file jadul yang dulu dipake di komputer Mac. Dibuat buat floppy disk dan hard disk zaman dulu, HFS juga pernah nongol di media read-only kayak CD-ROM. Orang juga sering sebut HFS sebagai Mac OS Standard.

Nah, pas Apple rilis Mac OS X 10.6, mereka udah nggak support buat format atau nulis ke disk HFS lagi. Cuma bisa dibaca sampe macOS 10.15. Mulai dari macOS 10.15, disk HFS udah nggak bisa dibaca sama sekali.

HFS (Hierarchical File System) adalah sistem file yang cukup kompleks. Untuk memahami cara kerjanya, kita perlu mengenal beberapa struktur utamanya:

Struktur Dasar HFS

Logical Blocks: Ini adalah unit terkecil dalam penyimpanan, biasanya berukuran 512 byte.

Allocation Blocks: Beberapa logical block digabung jadi allocation block. Ukurannya tergantung dari total ukuran volume. HFS cuma bisa ngelacak 65,535 allocation block karena keterbatasan penggunaan 16-bit.

Komponen Utama HFS

Boot Blocks: Dua blok pertama yang berisi informasi startup sistem, termasuk nama file sistem dan shell yang bakal dimuat.

Master Directory Block (MDB): Blok ketiga yang menyimpan informasi penting tentang volume, seperti tanggal pembuatan, lokasi struktur lain, dan ukuran blok-blok. Ada juga salinan cadangan MDB di akhir volume.

Volume Bitmap: Mencatat allocation block mana yang dipakai dan mana yang kosong.

Extent Overflow File: B-tree yang menyimpan informasi tambahan tentang alokasi blok buat file-file yang butuh lebih dari tiga extent awal.

Catalog File: B-tree yang menyimpan informasi tentang semua file dan direktori, termasuk nama, ukuran, tanggal, dan lokasi data.

Cara Kerja HFS

HFS menggunakan Catalog Node ID (CNID) untuk melacak file dan direktori. Setiap file dan direktori punya dua jenis record:

File/Directory Thread Record: Simpan nama dan CNID dari parent direktori.

File/Directory Record: Simpan metadata lengkap tentang file atau direktori, termasuk ukuran, tanggal, lokasi data, dan informasi tambahan buat Finder.

HFS juga pake extent untuk ngelacak lokasi data dalam allocation block. Kalau tiga extent awal nggak cukup, informasi tambahan disimpan di Extent Overflow File.

Intinya HFS adalah sistem file yang cukup rumit dengan banyak komponen. Dia menggunakan struktur B-tree untuk efisiensi, tapi juga punya keterbatasan dalam hal ukuran volume dan manajemen data.

Keterbatasan

Catalog File di HFS itu ibarat database raksasa yang nyimpen semua informasi tentang file dan direktori. Masalahnya, karena semua data di satu tempat, kalo ada banyak program yang mau akses sekaligus, bisa terjadi antrian panjang. Kalau data di Catalog File rusak, bisa fatal, karena semua informasi tentang file hilang. Beda sama sistem file lain kayak FAT atau Unix FS yang nyebarin data ke banyak tempat, jadi kalo ada bagian yang rusak, masih bisa diselamatin.

Terus, HFS cuma bisa ngelacak 65,535 allocation block. Ini berarti, sekalipun disknya gede, file tetep punya ukuran minimal. Misalnya, di disk 1 GB, ukuran minimal file bisa sampe 16 KB, padahal isinya cuma 1 byte. Ini sih nggak masalah buat file gede, tapi buat file kecil, bisa boros banget. Makanya, dulu orang sering bagi-bagi disk jadi partisi yang lebih kecil

Satu lagi, HFS itu nggak peduli huruf besar kecil buat nama file. Jadi, kalo kamu bikin file namanya "Dokumen" sama "dokumen", sistem anggap itu file yang sama.

Intinya, struktur HFS yang terpusat dan keterbatasan ukuran blok bikin dia kurang efisien, terutama buat disk yang gede dan banyak file kecil.

HFS+ (Hierarchical File System Plus)

HFS+ (atau Mac OS Extended) adalah generasi selanjutnya dari sistem file yang dikembangkan oleh Apple untuk menggantiin HFS yang lebih lawas. Dia pertama kali muncul di Mac OS 8.1 tahun 1998. HFS+ jadi tulang punggung sistem file di Mac OS X sampe akhirnya digantikan sama APFS di macOS High Sierra tahun 2017.

Dibandingin sama pendahulunya, HFS+, punya banyak peningkatan. Dia bisa nampung file jauh lebih gede, pake Unicode buat nama file, dan struktur data yang lebih efisien. Selain itu, HFS+ juga bisa bikin semacam shortcut ke direktori, mirip NTFS. Intinya, HFS+ itu versi yang lebih canggih dan bisa ngelola disk lebih efisien dibanding HFS.

Fitur

Journaling

Journaling adalah fitur yang mencatat semua perubahan yang terjadi pada sistem file sebelum perubahan tersebut benar-benar diterapkan. Bayangkan seperti membuat catatan harian sebelum melakukan sesuatu. Jika terjadi kesalahan atau sistem mati mendadak, catatan harian ini bisa digunakan untuk mengembalikan sistem ke keadaan yang konsisten sebelumnya.

Manfaat journaling:

  • Peningkatan keandalan: Jika terjadi kerusakan, sistem dapat memulihkan diri dengan melihat catatan perubahan terakhir.
  • Pengurangan risiko korupsi data: Perubahan yang tidak lengkap dapat dibatalkan.
  • Peningkatan kinerja: Dalam beberapa kasus, journaling dapat meningkatkan kinerja karena sistem tidak perlu memeriksa konsistensi data secara terus-menerus.

Kompresi

HFS+ mendukung beberapa algoritma kompresi, seperti:

  • Deflate (Zlib): Algoritma kompresi umum yang digunakan dalam banyak aplikasi.
  • LZVN (libFastCompression): Algoritma kompresi yang lebih cepat.
  • LZFSE: Algoritma kompresi yang dirancang khusus untuk data yang terkompresi.

Manfaat kompresi:

  • Menghemat ruang penyimpanan: File yang terkompresi akan memakan ruang disk yang lebih kecil.
  • Meningkatkan kinerja: Sistem operasi dapat mengakses data yang terkompresi secara langsung tanpa perlu dekompresi terlebih dahulu.

Enkripsi (FileVault 2)

FileVault 2 adalah fitur enkripsi volume yang memberikan perlindungan tambahan untuk data Anda. Data yang terenkripsi akan diacak sehingga tidak dapat dibaca oleh orang yang tidak berwenang.

Cara kerja:

  • Core Storage: FileVault 2 menggunakan Core Storage untuk mengelola volume yang terenkripsi.
  • Kunci enkripsi: Kunci enkripsi disimpan secara aman dan hanya dapat diakses oleh pengguna yang memiliki kata sandi yang benar.

ACL (Access Control List)

ACL adalah mekanisme yang lebih fleksibel untuk mengatur izin akses terhadap file dan folder. Dengan ACL, Anda dapat memberikan izin yang berbeda-beda kepada pengguna atau kelompok pengguna.

Keuntungan ACL:

  • Fleksibilitas: ACL memungkinkan Anda untuk mengatur izin yang sangat spesifik.
  • Keamanan: ACL dapat membantu melindungi data sensitif dari akses yang tidak sah.

Struktur Dasar dan Manajemen Penyimpanan

HFS Plus adalah sistem file yang digunakan oleh Apple untuk mengelola data pada disk. Untuk memahami cara kerjanya, kita perlu mengenal beberapa konsep dasar.

Struktur Dasar

Sektor: Unit terkecil penyimpanan data, biasanya berukuran 512 byte.

Allocation Block: Sekumpulan sektor yang dikelola sebagai satu unit. Ukurannya bisa berbeda-beda tergantung pada ukuran total volume. HFS Plus menggunakan sistem 32-bit untuk mengakses allocation block, sehingga bisa menangani volume yang jauh lebih besar dibandingkan pendahulunya, HFS yang hanya menggunakan 16-bit.

Komponen Utama

  • Boot Blocks: Sektor pertama dan kedua yang berisi informasi awal untuk memulai sistem. Mirip dengan HFS.
  • Volume Header: Mengandung informasi penting tentang volume, seperti ukuran allocation block, tanggal pembuatan, dan lokasi struktur lainnya.
  • Allocation File: Mencatat allocation block mana yang sedang digunakan dan mana yang kosong. Berbeda dengan HFS yang menggunakan Volume Bitmap, Allocation File disimpan sebagai file biasa.
  • Catalog File: Menyimpan informasi tentang semua file dan direktori, menggunakan struktur B-tree untuk efisiensi.
  • Extent Overflow File: Menyimpan informasi tambahan tentang alokasi blok untuk file yang membutuhkan lebih banyak ruang.
  • Attributes File: Menyimpan atribut tambahan tentang file, seperti metadata khusus.
  • Startup File: Untuk sistem operasi selain macOS.
  • Alternate Volume Header: Salinan cadangan dari Volume Header.
  • Sektor Terakhir: Direservasi untuk penggunaan internal Apple.

Manajemen Penyimpanan

HFS Plus menggunakan sistem alokasi blok yang lebih efisien dibandingkan HFS. Dengan menggunakan 32-bit untuk alamat allocation block, memungkinkan penggunaan disk yang lebih optimal, terutama pada disk dengan kapasitas besar.

Selain itu, HFS Plus juga menggunakan skema pengkodean karakter UTF-16 untuk nama file, memungkinkan penggunaan karakter dari berbagai bahasa.

ZFS (Zettabyte File System)

ZFS (Zettabyte File System) adalah sistem file dan manajer volume lokal yang dikembangkan oleh Sun Microsystems untuk mengelola penempatan, penyimpanan, dan pengambilan data dalam sistem komputasi kelas enterprise.

ZFS dikenal karena integritas data yang tinggi, skalabilitas yang luar biasa, dan fitur-fitur penyimpanan bawaan seperti:

  • Replikasi: Membuat salinan identik dari data.
  • Deduplikasi: Menghapus data duplikat untuk menghemat ruang penyimpanan.
  • Kompresi: Mengurangi ukuran data dengan menghilangkan informasi redundan.
  • Snapshot: Membuat titik pemulihan data pada waktu tertentu.
  • Klon: Membuat salinan identik dari data secara efisien.
  • Perlindungan data: Mencegah kerusakan atau kehilangan data.
  • Enkripsi: Mengacak data untuk melindungi dari akses tidak sah.

Meskipun awalnya bernama Zettabyte File System, istilah "zettabyte" tidak lagi memiliki arti khusus dalam konteks ini. Sebagai sistem file 128-bit, ZFS berpotensi untuk menangani hingga 256 quadrillion zettabyte data.

ZFS, lagi jadi primadona buat sistem NAS (Network-Attached Storage). Dia cocok banget buat jadi pondasi bagi sistem file jaringan kayak NFS. Bahkan, di dunia server virtual, ZFS juga jadi primadona.

Penggunaannya nggak cuma sebatas itu. ZFS bisa jadi dasar buat sistem file cluster kayak GPFS atau Lustre, biar bisa nambahin server sepuasnya. Kalo kamu pake OpenStack, ZFS bisa jadi andalan buat bikin penyimpanan blok Cinder dan objek Swift.

Pokoknya, ZFS ini serba bisa, deh!


Sistem file adalah fondasi yang tak terlihat dari setiap sistem operasi. Dengan memahami cara kerja sistem file, kita dapat mengoptimalkan penggunaan perangkat penyimpanan dan menjaga keamanan data kita. Meskipun teknologi terus berkembang, prinsip-prinsip dasar sistem file tetap relevan. Bagi para pengguna awam, pengetahuan tentang sistem file dapat membantu dalam memilih perangkat penyimpanan yang tepat. Sementara bagi para pengembang, pemahaman yang mendalam tentang sistem file adalah kunci untuk menciptakan aplikasi yang efisien dan andal.

Itulah pembahasan kita kali ini sebenarnya masih ada banyak lagi file system lainnya tapi yang kali ini dibahas hanya yang sering dipakai saja mungkin artikel ini akan di update lagi untuk menambah file system lainnya.

Next Post Previous Post
No Comment
Add Comment
comment url