4 Alat untuk Mengelola Kesehatan EXT2, EXT3 dan EXT4 di Linux


Sistem file adalah struktur data yang membantu mengontrol bagaimana data disimpan dan diambil pada sistem komputer. Sistem file juga dapat dianggap sebagai partisi fisik (atau diperluas) pada disk. Jika tidak dirawat dengan baik dan dipantau secara teratur, dalam jangka panjang dapat rusak atau rusak, dengan berbagai cara.

Ada beberapa faktor yang dapat menyebabkan sistem file menjadi tidak sehat: sistem crash, malfungsi perangkat keras atau perangkat lunak, driver dan program yang bermasalah, penyetelan yang salah, kelebihan beban dengan data yang berlebihan, dan gangguan kecil lainnya.

Salah satu dari masalah ini dapat menyebabkan Linux tidak dapat melakukan mount (atau unmount) sistem file dengan baik, sehingga menyebabkan kegagalan sistem.

Baca Juga: 7 Cara Menentukan Jenis File System di Linux (Ext2, Ext3 atau Ext4)

Selain itu, menjalankan sistem Anda dengan sistem file yang rusak dapat menimbulkan kesalahan runtime lainnya pada komponen sistem operasi atau aplikasi pengguna, yang dapat menyebabkan kehilangan data yang parah. Untuk menghindari kerusakan atau kerusakan sistem file, Anda perlu mengawasi kesehatannya.

Pada artikel ini, kami akan membahas alat untuk memantau dan memelihara kesehatan sistem file ext2, ext3 dan ext4. Semua alat yang dijelaskan di sini memerlukan hak pengguna root, oleh karena itu gunakan perintah sudo untuk menjalankannya.

Cara Melihat Informasi Sistem File EXT2/EXT3/EXT4

dumpe2fs adalah alat baris perintah yang digunakan untuk membuang informasi sistem file ext2/ext3/ext4, artinya alat ini menampilkan informasi blok super dan grup blok untuk sistem file di perangkat.

Sebelum menjalankan dumpe2fs, pastikan untuk menjalankan perintah df -hT untuk mengetahui nama perangkat sistem file.

sudo dumpe2fs /dev/sda10
Contoh Keluaran
dumpe2fs 1.42.13 (17-May-2015)
Filesystem volume name:   
Last mounted on:          /
Filesystem UUID:          bb29dda3-bdaa-4b39-86cf-4a6dc9634a1b
Filesystem magic number:  0xEF53
Filesystem revision #:    1 (dynamic)
Filesystem features:      has_journal ext_attr resize_inode dir_index filetype needs_recovery extent flex_bg sparse_super large_file huge_file uninit_bg dir_nlink extra_isize
Filesystem flags:         signed_directory_hash 
Default mount options:    user_xattr acl
Filesystem state:         clean
Errors behavior:          Continue
Filesystem OS type:       Linux
Inode count:              21544960
Block count:              86154752
Reserved block count:     4307737
Free blocks:              22387732
Free inodes:              21026406
First block:              0
Block size:               4096
Fragment size:            4096
Reserved GDT blocks:      1003
Blocks per group:         32768
Fragments per group:      32768
Inodes per group:         8192
Inode blocks per group:   512
Flex block group size:    16
Filesystem created:       Sun Jul 31 16:19:36 2016
Last mount time:          Mon Nov  6 10:25:28 2017
Last write time:          Mon Nov  6 10:25:19 2017
Mount count:              432
Maximum mount count:      -1
Last checked:             Sun Jul 31 16:19:36 2016
Check interval:           0 ()
Lifetime writes:          2834 GB
Reserved blocks uid:      0 (user root)
Reserved blocks gid:      0 (group root)
First inode:              11
Inode size:	          256
Required extra isize:     28
Desired extra isize:      28
Journal inode:            8
First orphan inode:       6947324
Default directory hash:   half_md4
Directory Hash Seed:      9da5dafb-bded-494d-ba7f-5c0ff3d9b805
Journal backup:           inode blocks
Journal features:         journal_incompat_revoke
Journal size:             128M
Journal length:           32768
Journal sequence:         0x00580f0c
Journal start:            12055

Anda dapat meneruskan tanda -b untuk menampilkan blok apa pun yang dicadangkan sebagai blok buruk di sistem file (tidak ada keluaran yang menyiratkan blok buruk):

dumpe2fs -b

Memeriksa Kesalahan pada Sistem File EXT2/EXT3/EXT4

e2fsck digunakan untuk memeriksa sistem file ext2/ext3/ext4 untuk menemukan kesalahan dan fsck memeriksa dan secara opsional dapat memperbaiki sistem file Linux; ini pada dasarnya adalah front-end untuk serangkaian pemeriksa sistem file (fsck.fstype misalnya fsck.ext3, fsck.sfx dll) yang ditawarkan di bawah Linux.

Ingatlah bahwa Linux menjalankan e2fack/fsck secara otomatis saat boot sistem pada partisi yang diberi label untuk diperiksa dalam file konfigurasi /etc/fstab. Hal ini biasanya dilakukan setelah sistem file belum di-unmount dengan bersih.

Perhatian: Jangan menjalankan e2fsck atau fsck pada sistem file yang terpasang, selalu unmount partisi terlebih dahulu sebelum Anda dapat menjalankannya alat-alat ini di atasnya, seperti yang ditunjukkan di bawah ini.

sudo unmount /dev/sda10
sudo fsck /dev/sda10

Alternatifnya, aktifkan keluaran verbose dengan saklar -V dan gunakan -t untuk menentukan tipe sistem file seperti ini:

sudo fsck -Vt ext4 /dev/sda10

Menyetel Sistem File EXT2/EXT3/EXT4

Kami telah menyebutkan sejak awal bahwa salah satu penyebab kerusakan sistem file adalah penyetelan yang salah. Anda dapat menggunakan utilitas tune2fs untuk mengubah parameter sistem file ext2/ext3/ext4 yang dapat disetel seperti dijelaskan di bawah.

Untuk melihat konten superblock sistem file, termasuk nilai parameter saat ini, gunakan opsi -l seperti yang ditunjukkan.

sudo tune2fs -l /dev/sda10
Contoh Keluaran
tune2fs 1.42.13 (17-May-2015)
Filesystem volume name:   
Last mounted on:          /
Filesystem UUID:          bb29dda3-bdaa-4b39-86cf-4a6dc9634a1b
Filesystem magic number:  0xEF53
Filesystem revision #:    1 (dynamic)
Filesystem features:      has_journal ext_attr resize_inode dir_index filetype needs_recovery extent flex_bg sparse_super large_file huge_file uninit_bg dir_nlink extra_isize
Filesystem flags:         signed_directory_hash 
Default mount options:    user_xattr acl
Filesystem state:         clean
Errors behavior:          Continue
Filesystem OS type:       Linux
Inode count:              21544960
Block count:              86154752
Reserved block count:     4307737
Free blocks:              22387732
Free inodes:              21026406
First block:              0
Block size:               4096
Fragment size:            4096
Reserved GDT blocks:      1003
Blocks per group:         32768
Fragments per group:      32768
Inodes per group:         8192
Inode blocks per group:   512
Flex block group size:    16
Filesystem created:       Sun Jul 31 16:19:36 2016
Last mount time:          Mon Nov  6 10:25:28 2017
Last write time:          Mon Nov  6 10:25:19 2017
Mount count:              432
Maximum mount count:      -1
Last checked:             Sun Jul 31 16:19:36 2016
Check interval:           0 ()
Lifetime writes:          2834 GB
Reserved blocks uid:      0 (user root)
Reserved blocks gid:      0 (group root)
First inode:              11
Inode size:	          256
Required extra isize:     28
Desired extra isize:      28
Journal inode:            8
First orphan inode:       6947324
Default directory hash:   half_md4
Directory Hash Seed:      9da5dafb-bded-494d-ba7f-5c0ff3d9b805
Journal backup:           inode blocks

Selanjutnya, dengan menggunakan flag -c, Anda dapat mengatur jumlah mount yang setelahnya sistem file akan diperiksa oleh e2fsck. Perintah ini memerintahkan sistem untuk menjalankan e2fsck terhadap /dev/sda10 setelah setiap 4 pemasangan.

sudo tune2fs -c 4 /dev/sda10

tune2fs 1.42.13 (17-May-2015)
Setting maximal mount count to 4

Anda juga dapat menentukan waktu antara dua pemeriksaan sistem file dengan opsi -i. Perintah berikut menetapkan interval 2 hari antara pemeriksaan sistem file.

sudo tune2fs  -i  2d  /dev/sda10

tune2fs 1.42.13 (17-May-2015)
Setting interval between checks to 172800 seconds

Sekarang jika Anda menjalankan perintah di bawah ini, interval pemeriksaan sistem file untuk /dev/sda10 sekarang telah disetel.

sudo tune2fs -l /dev/sda10
Contoh Keluaran
Filesystem created:       Sun Jul 31 16:19:36 2016
Last mount time:          Mon Nov  6 10:25:28 2017
Last write time:          Mon Nov  6 13:49:50 2017
Mount count:              432
Maximum mount count:      4
Last checked:             Sun Jul 31 16:19:36 2016
Check interval:           172800 (2 days)
Next check after:         Tue Aug  2 16:19:36 2016
Lifetime writes:          2834 GB
Reserved blocks uid:      0 (user root)
Reserved blocks gid:      0 (group root)
First inode:              11
Inode size:	          256
Required extra isize:     28
Desired extra isize:      28
Journal inode:            8
First orphan inode:       6947324
Default directory hash:   half_md4
Directory Hash Seed:      9da5dafb-bded-494d-ba7f-5c0ff3d9b805
Journal backup:           inode blocks

Untuk mengubah parameter penjurnalan default, gunakan opsi -J. Opsi ini juga memiliki sub-opsi: size=journal-size (menetapkan ukuran jurnal), device=external-journal (menentukan perangkat penyimpanannya) dan location=journal-location (mendefinisikan lokasi jurnal).

Perhatikan bahwa hanya satu opsi ukuran atau perangkat yang dapat diatur untuk sistem file:

sudo tune2fs -J size=4MB /dev/sda10

Terakhir, label volume sistem file dapat diatur menggunakan opsi -L seperti di bawah ini.

sudo tune2fs -L "ROOT" /dev/sda10

Debug Sistem File EXT2/EXT3/EXT4

debugfs adalah debugger sistem file ext2/ext3/ext4 yang sederhana dan interaktif. Ini memungkinkan Anda untuk mengubah parameter sistem file secara interaktif. Untuk melihat sub-perintah atau permintaan, ketik "?".

sudo debugfs /dev/sda10

Secara default, sistem file harus dibuka dalam mode baca-tulis, gunakan flag -w untuk membukanya dalam mode baca-tulis. Untuk membukanya dalam mode bencana, gunakan opsi -c.

Contoh Keluaran
debugfs 1.42.13 (17-May-2015)
debugfs:  ?
Available debugfs requests:

show_debugfs_params, params
                         Show debugfs parameters
open_filesys, open       Open a filesystem
close_filesys, close     Close the filesystem
freefrag, e2freefrag     Report free space fragmentation
feature, features        Set/print superblock features
dirty_filesys, dirty     Mark the filesystem as dirty
init_filesys             Initialize a filesystem (DESTROYS DATA)
show_super_stats, stats  Show superblock statistics
ncheck                   Do inode->name translation
icheck                   Do block->inode translation
change_root_directory, chroot
....

Untuk menampilkan fragmentasi ruang kosong, gunakan permintaan freefrag, seperti berikut.

debugfs: freefrag
Contoh Keluaran
Device: /dev/sda10
Blocksize: 4096 bytes
Total blocks: 86154752
Free blocks: 22387732 (26.0%)

Min. free extent: 4 KB 
Max. free extent: 2064256 KB
Avg. free extent: 2664 KB
Num. free extent: 33625

HISTOGRAM OF FREE EXTENT SIZES:
Extent Size Range :  Free extents   Free Blocks  Percent
    4K...    8K-  :          4883          4883    0.02%
    8K...   16K-  :          4029          9357    0.04%
   16K...   32K-  :          3172         15824    0.07%
   32K...   64K-  :          2523         27916    0.12%
   64K...  128K-  :          2041         45142    0.20%
  128K...  256K-  :          2088         95442    0.43%
  256K...  512K-  :          2462        218526    0.98%
  512K... 1024K-  :          3175        571055    2.55%
    1M...    2M-  :          4551       1609188    7.19%
    2M...    4M-  :          2870       1942177    8.68%
    4M...    8M-  :          1065       1448374    6.47%
    8M...   16M-  :           364        891633    3.98%
   16M...   32M-  :           194        984448    4.40%
   32M...   64M-  :            86        873181    3.90%
   64M...  128M-  :            77       1733629    7.74%
  128M...  256M-  :            11        490445    2.19%
  256M...  512M-  :            10        889448    3.97%
  512M... 1024M-  :             2        343904    1.54%
    1G...    2G-  :            22      10217801   45.64%
debugfs:  

Anda dapat menjelajahi begitu banyak permintaan lainnya seperti membuat atau menghapus file atau direktori, mengubah direktori kerja saat ini dan masih banyak lagi, hanya dengan membaca penjelasan singkat yang diberikan. Untuk keluar dari debugf, gunakan permintaan q.

Itu saja untuk saat ini! Kami memiliki kumpulan artikel terkait dalam berbagai kategori di bawah ini, yang menurut Anda berguna.

Informasi Penggunaan Sistem File:

  1. 12 Perintah “df” yang Berguna untuk Memeriksa Ruang Disk di Linux
  2. Pydf merupakan Perintah Alternatif “df” untuk Memeriksa Penggunaan Disk dalam Berbagai Warna
  3. 10 Perintah du (Penggunaan Disk) yang berguna untuk Menemukan Penggunaan Disk pada File dan Direktori

Periksa Kesehatan Disk atau Partisi:

  1. 3 Alat Pemindaian Disk Linux Berbasis GUI dan Terminal yang Berguna
  2. Cara Mengecek Bad Sector atau Bad Block pada Harddisk di Linux
  3. Cara Memperbaiki dan Mendefrag Partisi dan Direktori Sistem Linux

Mempertahankan sistem file yang sehat selalu meningkatkan kinerja sistem Linux Anda secara keseluruhan. Jika Anda memiliki pertanyaan atau pemikiran tambahan untuk dibagikan, gunakan formulir komentar di bawah.