GNU/Linux >> Belajar Linux >  >> Linux

Tutorial dasar sistem File Linux – ext2, ext3, ext4, JFS dan XFS

Sistem Linux asli menggunakan sistem file sederhana yang meniru fungsi sistem file Unix. Dalam tutorial ini, kita akan membahas sistem file dasar yang digunakan di Linux.

Sistem file ext

Sistem file asli yang diperkenalkan dengan sistem operasi Linux disebut sistem file yang diperluas (atau disingkat ext). Ini menyediakan sistem file mirip Unix untuk Linux, menggunakan direktori virtual untuk menangani perangkat fisik, dan menyimpan data dalam blok dengan panjang tetap pada perangkat fisik.

Sistem file ext menggunakan sistem yang disebut inode untuk melacak informasi tentang file yang disimpan dalam direktori virtual. Sistem inode membuat tabel terpisah pada setiap perangkat fisik, yang disebut tabel inode, untuk menyimpan informasi file. Setiap file yang disimpan di direktori virtual memiliki entri di tabel inode. Bagian nama yang diperluas berasal dari data tambahan yang dilacaknya pada setiap file, yang terdiri dari:

  • Nama file
  • Ukuran file
  • Pemilik file
  • Grup tempat file tersebut berada
  • Izin akses untuk file
  • Penunjuk ke setiap blok disk yang berisi data dari file

Linux mereferensikan setiap inode dalam tabel inode menggunakan nomor unik (disebut nomor inode), yang ditetapkan oleh sistem file saat file data dibuat. Sistem file menggunakan nomor inode untuk mengidentifikasi file daripada harus menggunakan nama dan jalur file lengkap.

Sistem file ext2

Sistem file ext asli memiliki beberapa batasan, seperti membatasi file hanya berukuran 2GB. Tidak lama setelah Linux pertama kali diperkenalkan, sistem file ext ditingkatkan untuk membuat sistem file tambahan kedua, yang disebut ext2. Seperti yang dapat Anda tebak, sistem file ext2 merupakan perluasan dari kemampuan dasar sistem file ext tetapi mempertahankan struktur yang sama. Sistem file ext2 memperluas format tabel inode untuk melacak informasi tambahan tentang setiap file di sistem.

Tabel inode ext2 menambahkan nilai waktu yang dibuat, dimodifikasi, dan diakses terakhir untuk file guna membantu administrator sistem melacak akses file pada sistem. Sistem file ext2 juga meningkatkan ukuran file maksimum yang diizinkan menjadi 2 TB (kemudian di versi ext2 yang lebih baru, yang ditingkatkan menjadi 32 TB) untuk membantu mengakomodasi file besar yang biasa ditemukan di server database.

Selain memperluas tabel inode, sistem file ext2 juga mengubah cara file disimpan di blok data. Masalah umum dengan sistem file ext adalah bahwa ketika file ditulis ke perangkat fisik, blok yang digunakan untuk menyimpan data cenderung tersebar di seluruh perangkat (disebut fragmentasi). Fragmentasi blok data dapat mengurangi kinerja sistem file, karena membutuhkan waktu lebih lama untuk mencari perangkat penyimpanan guna mengakses semua blok untuk file tertentu.

Sistem file ext2 membantu mengurangi fragmentasi dengan mengalokasikan blok disk dalam grup saat Anda menyimpan file. Dengan mengelompokkan blok data untuk sebuah file, sistem file tidak perlu mencari di seluruh perangkat fisik untuk blok data untuk membaca file. Sistem file ext2 adalah sistem file default yang digunakan dalam distribusi Linux selama bertahun-tahun, tetapi juga memiliki keterbatasan. Tabel inode, sementara fitur bagus yang memungkinkan sistem file melacak informasi tambahan tentang file, dapat menyebabkan masalah yang bisa berakibat fatal bagi sistem. Setiap kali sistem file menyimpan atau memperbarui file, ia harus memodifikasi tabel inode dengan informasi baru. Masalahnya adalah tindakan ini tidak selalu lancar.

Jika sesuatu terjadi pada sistem komputer antara file yang disimpan dan tabel inode yang diperbarui, keduanya akan menjadi tidak sinkron. Sistem file ext2 terkenal mudah rusak karena sistem crash dan pemadaman listrik. Bahkan jika data file disimpan dengan baik di perangkat fisik, jika entri tabel inode tidak selesai, sistem file ext2 bahkan tidak akan tahu bahwa file itu ada! Tidak lama kemudian, para pengembang menjelajahi jalan berbeda dari sistem file Linux.

Sistem file jurnal

Sistem file jurnal memberikan tingkat keamanan baru ke sistem Linux. Alih-alih menulis data langsung ke perangkat penyimpanan dan kemudian memperbarui tabel inode, sistem file journal menulis perubahan file menjadi file sementara (disebut jurnal) terlebih dahulu. Setelah data berhasil ditulis ke perangkat penyimpanan dan tabel inode, entri jurnal dihapus.

Jika sistem harus crash atau mengalami pemadaman listrik sebelum data dapat ditulis ke perangkat penyimpanan, sistem file jurnal hanya membaca file jurnal dan memproses data yang tidak terikat yang tersisa. Ada tiga metode penjurnalan berbeda yang biasa digunakan di Linux, masing-masing dengan tingkat perlindungan yang berbeda. Ini ditunjukkan di bawah dalam tabel.

Metode Sistem File Jurnal:

Metode Deskripsi Mode data Baik data inode maupun file dijurnal. Risiko kehilangan data rendah, tetapi kinerjanya buruk. Mode berurutan Hanya data inode yang ditulis ke jurnal, tetapi tidak dihapus sampai data file berhasil ditulis. Kompromi yang baik antara kinerja dan keamanan. Mode tulis ulang Hanya data inode yang ditulis ke jurnal, tidak ada kontrol saat data file ditulis. Risiko kehilangan data lebih tinggi, tetapi masih lebih baik daripada tidak menggunakan penjurnalan.

Batasan

Metode penjurnalan mode data sejauh ini paling aman untuk melindungi data, tetapi juga paling lambat. Semua data yang ditulis ke perangkat penyimpanan harus ditulis dua kali, sekali ke jurnal, lalu lagi ke perangkat penyimpanan yang sebenarnya. Ini dapat menyebabkan kinerja yang buruk, terutama untuk sistem yang melakukan banyak penulisan data. Selama bertahun-tahun, beberapa sistem file jurnal yang berbeda telah muncul di Linux. Bagian berikut menjelaskan sistem file penjurnalan Linux populer yang tersedia.

Sistem file penjurnalan Linux yang diperluas

Grup yang sama yang mengembangkan sistem file ext dan ext2 sebagai bagian dari proyek Linux juga membuat versi penjurnalan sistem file. Sistem file penjurnalan ini kompatibel dengan sistem file ext2, dan mudah untuk mengkonversi bolak-balik di antara mereka. Saat ini ada dua sistem file penjurnalan terpisah berdasarkan sistem file ext2.

Sistem file ext3

Sistem file ext3 ditambahkan ke kernel Linux pada tahun 2001, dan hingga saat ini adalah sistem file default yang digunakan oleh hampir semua distribusi Linux. Ini menggunakan struktur tabel inode yang sama dengan sistem file ext2, tetapi menambahkan file jurnal ke setiap perangkat penyimpanan untuk membuat jurnal data yang ditulis ke perangkat penyimpanan.

Secara default, sistem file ext3 menggunakan metode mode terurut penjurnalan, hanya menulis informasi inode ke file jurnal, tetapi tidak menghapusnya sampai blok data berhasil ditulis ke perangkat penyimpanan. Anda dapat mengubah metode penjurnalan yang digunakan dalam sistem file ext3 ke mode data atau writeback dengan opsi baris perintah sederhana saat membuat sistem file.

Sementara sistem file ext3 menambahkan penjurnalan dasar ke sistem file Linux, masih ada beberapa hal yang kurang. Misalnya, sistem file ext3 tidak memberikan pemulihan apa pun dari penghapusan file yang tidak disengaja, tidak ada kompresi data bawaan yang tersedia (walaupun ada tambalan yang dapat diinstal secara terpisah yang menyediakan fitur ini), dan sistem file ext3 tidak 't mendukung enkripsi file. Untuk alasan tersebut, pengembang di proyek Linux memilih untuk terus bekerja meningkatkan sistem file ext3.

Sistem file ext4

Hasil dari perluasan sistem file ext3 adalah (seperti yang mungkin Anda duga) sistem file ext4. Sistem file ext4 secara resmi didukung di kernel Linux pada tahun 2008, dan sekarang menjadi sistem file default yang digunakan di sebagian besar distribusi Linux populer, seperti Fedora dan Ubuntu.

Selain itu, untuk mendukung kompresi dan enkripsi, sistem file ext4 juga mendukung fitur yang disebut ekstensi. Luas mengalokasikan ruang pada perangkat penyimpanan dalam blok, dan hanya menyimpan lokasi blok awal di tabel inode. Ini membantu menghemat ruang di tabel inode dengan tidak harus mencantumkan semua blok data yang digunakan untuk menyimpan data dari file.

Sistem file ext4 juga menggabungkan pra-alokasi blok. Jika Anda ingin memesan ruang pada perangkat penyimpanan untuk file yang Anda tahu akan bertambah besar ukurannya, dengan sistem file ext4 dimungkinkan untuk mengalokasikan semua blok yang diharapkan untuk file tersebut, bukan hanya blok yang ada secara fisik. Sistem file ext4 mengisi blok data yang dicadangkan dengan nol, dan tahu untuk tidak mengalokasikannya untuk file lain.

Sistem file reiser

Pada tahun 2001, Hans Reiser menciptakan sistem file jurnal pertama untuk Linux, yang disebut ReiserFS. Sistem file ReiserFS hanya mendukung mode penulisan balik jurnal, hanya menulis data tabel inode ke file jurnal. Karena hanya menulis data tabel inode ke jurnal, sistem file ReiserFS adalah salah satu sistem file jurnal tercepat di Linux.

Dua fitur menarik yang dimasukkan ke dalam sistem file ReiserFS adalah Anda dapat mengubah ukuran sistem file yang ada saat masih aktif, dan menggunakan teknik yang disebut tailpacking, yang memasukkan data dari satu file ke ruang kosong di blok data dari file lain. Fitur pengubahan ukuran sistem file aktif sangat bagus jika Anda harus memperluas sistem file yang sudah dibuat untuk menampung lebih banyak data.

Sistem file jurnal (JFS)

Mungkin salah satu sistem file penjurnalan tertua, Journaled File System (JFS) dikembangkan oleh IBM pada tahun 1990 untuk cita rasa AIX dari Unix. Namun, baru pada versi keduanya porting ke lingkungan Linux.

Catatan – Nama resmi IBM untuk versi kedua dari sistem file JFS adalah JFS2, tetapi kebanyakan sistem Linux menyebutnya hanya sebagai JFS.

Sistem file JFS menggunakan metode penjurnalan terurut, hanya menyimpan data tabel inode dalam jurnal, tetapi tidak menghapusnya hingga data file aktual ditulis ke perangkat penyimpanan. Metode ini merupakan kompromi antara kecepatan ReiserFS dan integritas metode penjurnalan mode data.

Sistem file JFS menggunakan alokasi file berbasis luas, mengalokasikan sekelompok blok untuk setiap file yang ditulis ke perangkat penyimpanan. Metode ini menyediakan lebih sedikit fragmentasi pada perangkat penyimpanan. Di luar penawaran IBM Linux, sistem file JFS tidak populer digunakan, tetapi Anda mungkin mengalaminya dalam perjalanan Linux Anda.

Sistem file xfs

Sistem file penjurnalan XFS adalah sistem file lain yang awalnya dibuat untuk sistem Unix komersial yang masuk ke dunia Linux. Silicon Graphics Incorporated (SGI) awalnya membuat XFS pada tahun 1994 untuk sistem IRIX Unix komersialnya. Itu dirilis ke lingkungan Linux untuk penggunaan umum pada tahun 2002.

Sistem file XFS menggunakan mode penulisan balik penjurnalan, yang memberikan kinerja tinggi tetapi menimbulkan sejumlah risiko karena data aktual tidak disimpan dalam file jurnal. Sistem file XFS juga memungkinkan pengubahan ukuran sistem file secara online, mirip dengan sistem file ReiserFS, kecuali sistem file XFS hanya dapat diperluas dan tidak dikecilkan.


Linux
  1. 7 Cara Menentukan Tipe File System di Linux (Ext2, Ext3 atau Ext4)

  2. 25 Pertanyaan dan Jawaban Wawancara Linux Teratas

  3. Fitur &Perbedaan Sistem File Linux Ext2, Ext3 dan Ext4

  1. Apa itu Tautan Lunak dan Tautan Keras di Sistem File Linux

  2. Cara membuat dan memasang sistem file di Linux

  3. Alat untuk melihat sistem file ext2/ext3/ext4/btrfs/jfs/xfs di bawah windows?

  1. Cara Mengubah Nama Label Partisi Linux pada EXT4 / EXT3 / EXT2 dan Swap

  2. Cara Memigrasi Sistem File Ext2/Ext3 ke Ext4 di Linux

  3. Bagaimana saya tahu jika suatu partisi adalah ext2, ext3, atau ext4?