GNU/Linux >> Belajar Linux >  >> Linux

Apa itu Fstab di Linux | Pengantar file Linux /etc/fstab

Dalam panduan ini, kita akan mempelajari apa itu fstab di Linux, dan apa gunanya fstab file, struktur /etc/fstab file dan akhirnya cara men-debug masalah fstab. Di bagian akhir, kita juga akan membahas pengenalan singkat tentang mtab file, penggunaannya dan bagaimana mtab berbeda dari fstab.

Apa itu fstab?

Sebagai administrator server atau pengguna desktop Linux atau siapa saja yang baru mengenal Linux, memahami tentang /etc/fstab file di Linux dan cara men-debug masalah fstab sangat penting.

Fstab adalah f ile s sistem tab le yang digunakan oleh kernel selama waktu boot untuk me-mount sistem file. Sederhananya, Anda akan membuat satu atau lebih partisi pada hard drive Anda dan Anda akan membuat entri untuk setiap partisi di fstab yang akan dibaca oleh kernel selama waktu boot dan sistem file akan dipasang secara otomatis.

Secara default, setiap partisi yang Anda buat selama instalasi OS akan secara otomatis ditambahkan ke file fstab. Mari selami dan lihat bagaimana fstab terstruktur dan bagaimana menggunakan fstab.

CATATAN : Sebelum mengedit file fstab, praktik terbaik adalah membuat cadangan file. Jika seandainya terjadi kesalahan, Anda dapat mengembalikan salinan cadangan.

Struktur file /etc/fstab

Fstab terletak di /etc/ direktori dan dimiliki oleh pengguna root. Jadi, Anda harus mengedit file menggunakan sudo hak istimewa atau sebagai root pengguna.

Tampilkan file fstab dengan menjalankan perintah berikut untuk memahami strukturnya.

$ cat /etc/fstab
$ cat /etc/fstab | grep -i -v "^#" | column -t # Skip comments and format

File Fstab terdiri dari enam kolom (bagian).

  1. Sistem file - Blokir perangkat yang dipartisi dan buat sistem file di dalamnya.
  2. Titik Gunung - Di mana sistem file dipasang di sistem Anda.
  3. Jenis - Jenis sistem file (Ext4, Ext3, swap, Xfs, dll.)
  4. Opsi - Ini memutuskan parameter pemasangan apa yang harus dipertimbangkan saat memasang sistem file
  5. Buang - Ini untuk tujuan pencadangan yang digunakan oleh dump kegunaan. Menyetelnya ke nol berarti menonaktifkan pencadangan dan satu berarti mengaktifkan pencadangan ke perangkat/media tertentu.
  6. Lulus - Pemeriksaan sistem file saat boot dengan fsck kegunaan. Zero akan menonaktifkan pemeriksaan sistem file dan untuk sistem file root harus disetel ke 1 dan untuk partisi lain, harus disetel ke 2.

Setiap sistem file dijelaskan pada baris terpisah. Kolom pada setiap baris dipisahkan oleh tab atau spasi.

Mari kita lihat enam parameter ini secara detail.

1. Sistem Berkas

Di kolom pertama fstab, Anda harus menunjuk ke partisi mana yang akan Anda mount. Anda dapat menggunakan nama perangkat blokir seperti /dev/sda* atau menggunakan UUID.

Saat Anda membuat sistem file di atas drive yang dipartisi menggunakan mkfs perintah akan ada UUID yang dibuat untuk partisi tertentu.

Katakanlah Anda membuat partisi baru dan itu adalah sdb1 . Dalam hal ini, fstab Anda akan menjadi sebagai berikut.

/dev/sdb1 /home ext4 defaults 0 0

Untuk mendapatkan id blok untuk sistem file apa pun, jalankan perintah berikut.

$ blkid                # Print info about all fs.
$ blkid /dev/sdb1      # Print info about given fs alone.

Sekarang menggunakan id blok ini Anda dapat memasang sistem file seperti yang ditunjukkan pada gambar di bawah ini.

2. Titik Gunung

Di kolom kedua, Anda harus menentukan direktori mount point. Titik mount mengacu pada direktori di sistem file tempat drive yang dipartisi akan dipasang.

Seperti yang Anda lihat pada gambar di bawah, setiap partisi dipasang di bawah direktori yang berbeda. Misalnya, partisi /dev/sdb1 didedikasikan untuk direktori home dan dipasang di bawah /home .

Katakanlah Anda membuat partisi baru dengan ukuran 100GB dan dengan EXT4 sebagai tipe partisi. Entri fstab akan menjadi sebagai berikut. Disini /mnt/data1 adalah titik pemasangan.

UUID=xxxx-xxx-xxx /mnt/data1/ ext4 defaults 0 0

Atau

/dev/sdb2 /mnt/data1/ ext4 defaults 0 0

3. Jenis Sistem File

Di sini Anda akan menyebutkan jenis sistem file (EXT2, EXT3, EXT4, XFS, VFAT, SWAP, dll.). Jika Anda ingin mengetahui jenis sistem file untuk perangkat blok, gunakan blkid atau lsblk perintah.

$ lsblk -f /dev/sdb1
NAME FSTYPE LABEL UUID                                 MOUNTPOINT
sdb1 ext4         365c64d7-4d65-4cdf-8ce1-0def8bb41997 /home
$ blkid /dev/sdb1
/dev/sdb1: UUID="365c64d7-4d65-4cdf-8ce1-0def8bb41997" BLOCK_SIZE="4096" TYPE="ext4" PARTUUID="8f174339-01"

4. Opsi Pemasangan

Ini adalah kolom penting di mana Anda akan melewati opsi mount untuk sistem file. Ada banyak pilihan mount yang bisa digunakan. Untuk penggunaan normal menggunakan opsi default sudah cukup. Opsi default menunjuk ke kombinasi tujuh (rw , suid , dev , exec , auto , nouser , dan async ) pilihan.

Mari kita lihat apa yang dilakukan opsi default.

  • rw - Ini memberitahu sistem file untuk dipasang dalam mode baca-tulis. Ketika terjadi kesalahan Anda dapat membuat sistem file untuk dipasang dalam mode read-only dengan menggunakan opsi errors=remount-ro .
  • suid - Operasi apa pun yang terkait dengan suid dan sgid akan diizinkan melalui opsi ini.
  • dev - Ini akan menginterpretasikan karakter dan memblokir perangkat pada sistem file. Jika Anda tidak ingin menafsirkan karakter dan memblokir perangkat, Anda dapat menggunakan opsi nodev secara eksplisit.
  • exec - Dari sistem file Anda dapat menjalankan binari dengan mengatur opsi exec. Sebaliknya, Anda dapat menggunakan noexec opsi untuk tidak menjalankan binari dari sistem file.
  • auto - Opsi ini bertanggung jawab untuk memasang sistem file secara otomatis selama waktu boot atau setiap kali Anda menjalankan perintah mount -a dari terminal. Berlawanan dengan ini, ada noauto opsi yang hanya memungkinkan untuk memasang sistem file satu per satu.
  • nouser - Hanya pengguna super yang dapat memasang sistem file. Anda juga dapat menggunakan opsi "pengguna" dan "pengguna" yang dapat mengatur pengguna biasa untuk memasang dan melepas sistem file.
  • async - Semua operasi IO harus dilakukan secara asinkron. Jika Anda menggunakan opsi "sinkronisasi", operasi IO akan dilakukan secara sinkron.

Tergantung pada kebutuhan, Anda mungkin perlu menggunakan opsi yang berbeda. Jika Anda memiliki server produksi yang ada di lingkungan Anda, saya sarankan Anda melihat file fstab yang akan memberi Anda ide bagus tentang opsi pemasangan apa yang digunakan.

5. Buang

Kolom ini khusus untuk tujuan pencadangan. Ketika disetel ke 1, utilitas dump akan mengambil cadangan. Ini adalah fitur usang sekarang karena pada awalnya dirancang untuk mengambil cadangan dalam kaset untuk sistem file yang lebih lama.

disarankan untuk menyetelnya ke nol .

6. Lulus

Selama waktu boot fsck utilitas akan melakukan pemeriksaan sistem file berdasarkan nilai yang kami berikan di kolom keenam. Jika Anda menyetel nilainya ke nol atau biarkan kosong , pemeriksaan sistem file akan dinonaktifkan.

Sistem file root harus selalu ditetapkan ke nilai 1 . Untuk sistem file lain, Anda dapat menyetel nilainya ke 2 . Karena saya menggunakan VM untuk demonstrasi, saya telah menyetel semua nilai ke nol.

Perbaiki Masalah Booting Terkait dengan File Fstab

Jika Anda membuat kesalahan dalam file fstab dan ketika Anda me-reboot mesin, itu akan masuk ke mode darurat . Dalam mode darurat, tidak akan ada antarmuka jaringan sehingga Anda harus men-debug langsung di konsol.

Anda harus mengetikkan root password untuk masuk ke mode darurat. Jalankan perintah berikut dan gulir perlahan untuk melihat pesan kesalahan. Dalam kasus saya, saya sengaja menghapus pemisah (/) di /dev/sdb1 .

Dalam mode darurat, jika sistem file dipasang dalam mode hanya-baca maka Anda harus memasang di rw mode dan edit fstab file untuk memperbaiki masalah. Untuk me-remount sistem file di rw mode jalankan perintah berikut.

$ mount -o rw,remount /

Sekarang edit fstab untuk memperbaiki kesalahan dan reboot mesin. Sekarang mesin Anda seharusnya dapat melakukan booting dengan benar.

$ reboot

Untuk menghindari masalah selama waktu boot, Anda dapat menjalankan mount perintah setelah menambahkan fstab entri.

Lihatlah gambar di bawah ini di mana saya telah menambahkan entri baru untuk /dev/sdb2 . Saya belum menentukan jenis sistem file sehingga akan menimbulkan kesalahan ketika saya menjalankan mount perintah.

$ mount -a
mount: /mnt: unknown filesystem type 'defaults'.

Apa itu File Mtab?

Saat Anda menjalankan perintah mount tanpa memberikan argumen apa pun, ia akan mencetak daftar sistem file yang di-mount.

$ mount

Ada juga file bernama mtab di /etc/ direktori. Saat Anda melihat /etc/mtab , itu akan sama persis dengan output mount perintah.

Mari kita lihat apa yang dikatakan halaman manual tentang file mtab.

/etc/mtab file disinkronkan ke mount di proc berkas sistem. Jika Anda menjalankan mount atau umount perintah hasilnya akan diperbarui di mount.

$ ls -ln /etc/mtab
lrwxrwxrwx 1 0 0 19 Jan 9 17:45 /etc/mtab -> ../proc/self/mounts

Untuk meringkas perbedaan antara fstab dan mtab, fstab digunakan untuk me-mount sistem file selama waktu boot dan mtab digunakan untuk menampilkan daftar sistem file yang di-mount.

Jika /etc/mtab file rusak atau terhapus secara tidak sengaja, Anda dapat membuat ulang dengan menggunakan perintah berikut.

$ sudo sh -c 'grep -v rootfs /proc/mounts > /etc/mtab'

Kesimpulan

Pada artikel ini kita telah membahas apa itu fstab dan mtab dan bagaimana pentingnya sistem untuk menyimpan dan membaca informasi partisi selama waktu boot. Kami juga membahas apa yang terjadi ketika ada kesalahan yang dibuat dalam file fstab.


Linux
  1. Memahami file /etc/hosts di Linux

  2. Contoh file /etc/services di Linux

  3. Apa itu Anacron dan penggunaan Anacron di Linux

  1. Apa itu file /dev/zero dan /dev/null di Linux?

  2. Memahami File Konfigurasi /etc/profile di Linux

  3. Apa arti opsi sw di /etc/fstab?

  1. Pengantar file Linux /etc/fstab

  2. Apa hubungan antara direktori /etc/init.d dan /etc/rcX.d di Linux?

  3. Berapa batas ukuran /etc/hosts?