Memecahkan masalah booting VM Linux karena error fstab


Fstab (tabel sistem file) adalah file konfigurasi yang digunakan untuk menentukan bagaimana partisi disk, sistem file, dan fitur berbagi file dipasang di VM Linux Anda bertahan di seluruh proses mulai ulang sistem.

Dokumen ini berisi penjelasan mengenai beberapa kondisi, di mana konfigurasi fstab yang salah dapat menyebabkan masalah booting, dan memberikan saran pemecahan masalah untuk memperbaiki masalah tersebut.

Beberapa masalah umum terkait kesalahan konfigurasi fstab tercantum di bawah:

  • Error sintaksis dalam file konfigurasi fstab
  • UUID yang salah
  • Ada entri untuk perangkat yang tidak terpasang/tidak tersedia
  • Opsi pemasangan seperti nobarrier yang tidak digunakan lagi untuk jenis sistem file xfs di image SUSE atau RHEL.

Sebelum memulai

  • Jika ingin mencatat output port serial ke dalam log di Cloud Logging, pahami Cloud Logging.
  • Jika Anda belum melakukannya, siapkan autentikasi. Autentikasi adalah proses yang digunakan untuk memverifikasi identitas Anda agar dapat mengakses Google Cloud layanan dan API. Untuk menjalankan kode atau contoh dari lingkungan pengembangan lokal, Anda dapat mengautentikasi ke Compute Engine dengan memilih salah satu opsi berikut:

    Select the tab for how you plan to use the samples on this page:

    Console

    When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.

    gcloud

    1. Install the Google Cloud CLI, then initialize it by running the following command:

      gcloud init
    2. Set a default region and zone.
    3. REST

      Untuk menggunakan contoh REST API di halaman ini dalam lingkungan pengembangan lokal, gunakan kredensial yang Anda berikan ke gcloud CLI.

        Install the Google Cloud CLI, then initialize it by running the following command:

        gcloud init

      Untuk informasi selengkapnya, lihat Mengautentikasi untuk menggunakan REST dalam Google Cloud dokumentasi autentikasi.

Mengidentifikasi masalah fstab

Untuk masalah booting, Google sangat merekomendasikan agar Anda memeriksa log booting di Konsol Serial VM Linux. VM memasuki mode darurat dengan pesan error yang menunjukkan bahwa masalah terjadi pada fstab.

  [K[[1;31m TIME [0m] Timed out waiting for device dev-incorrect.device.
  [[1;33mDEPEND[0m] Dependency failed for /distribution.
  [[1;33mDEPEND[0m] Dependency failed for Local File Systems.
  ...
  Welcome to emergency mode! After logging in, type "journalctl -xb" to viewsystem logs, "systemctl reboot" to reboot, "systemctl default" to try again to boot into default mode.
  Give root password for maintenance
  (or type Control-D to continue)
  

Sesuai dengan pesan error, terdapat kegagalan dependensi untuk sistem file /distribution. Kegagalan dependensi untuk direktori pemasangan sistem file akan berbeda berdasarkan nama sistem file yang digunakan.

Resolusi

Gunakan opsi berikut untuk mengatasi error fstab di VM Linux yang dihosting di Google Cloud. Anda dapat menyelesaikan masalah ini lebih cepat menggunakan konsol serial daripada menggunakan metode manual.

Agar dapat menggunakan metode berikut untuk menyelesaikan masalah fstab, Anda harus mengaktifkan akses port serial untuk VM.

Opsi 1: Gunakan konsol serial untuk login ke VM dalam mode darurat

  1. Login ke konsol serial VM dari Konsol Google Cloud. Konsol serial

  2. Dalam mode darurat saat ini, masukkan sandi root untuk mengakses VM Anda.

  3. Gunakan editor teks favorit Anda untuk membuka file fstab. Lakukan perubahan yang diperlukan dan simpan perubahan di file fstab. Dalam contoh berikut, editor vi digunakan.

    vi /etc/fstab

    File Fstab

    Pada contoh sebelumnya, perangkat untuk /distribution dilepas dari VM. Beri komentar pada baris yang merujuk sistem file atau hapus entri fstab untuk direktori pemasangan /distribution.

    Gunakan man fstab untuk detail selengkapnya tentang konfigurasi dan sintaksis fstab.

  4. Simpan file dan keluar dari editor. Jika Anda menggunakan editor vi, gunakan ESC + :wq! untuk menyimpan dan keluar dari editor.

  5. Lanjutkan proses booting dengan memasukkan reboot saat diminta.

  6. Setelah berhasil memperbaiki masalah, proses booting VM akan selesai dan perintah login akan muncul di konsol serial.

  7. Verifikasi bahwa Anda dapat login ke VM lagi menggunakan SSH.

Opsi 2 - Menggunakan Mode Satu Pengguna di Konsol Serial

Opsi ini dapat digunakan jika sandi root tidak ditetapkan.

Prasyarat: Parameter GRUB_TIMEOUT dalam file konfigurasi grub harus ditetapkan ke nilai bukan nol. Biasanya file ini berada di /etc/default/grub, tetapi pada beberapa distribusi sebelumnya, file ini mungkin berada di direktori non-standar.

  1. Buka halaman VM instances di konsol Google Cloud. Buka VM instances

  2. Login ke konsol serial Mesin Virtual dari konsol Google Cloud. Konsol Serial2

  3. Klik RESET untuk virtual machine dari Konsol Google Cloud.

    Reset file

  4. Di jendela konsol serial, hentikan proses booting dengan mengklik tombol panah untuk menjeda di layar atau menu grub.

  5. Pada daftar kernel di layar boot loader grub, pilih kernel dan tekan e pada keyboard.

    file bootloader

  6. Tambahkan parameter rd.break di akhir baris kernel, lalu tekan ctrl+x. Hal ini membantu mem-booting VM ke mode pengguna tunggal.

    Menu bootloader

  7. Instal sistem file root dalam mode tulis baca.

  8. Analisis, buat perubahan yang diperlukan, dan simpan file fstab. Gunakan man fstab untuk mengetahui detail lebih lanjut mengenai konfigurasi dan sintaksis. Gunakan editor teks favorit Anda untuk membuka file fstab. Dalam contoh di bawah ini, editor vi digunakan.

    vi /etc/fstab

    File Fstab2

    Dalam contoh ini, perangkat untuk /distribution dilepas dari VM, jadi berikan komentar pada baris atau hapus entri fstab untuk direktori pemasangan /distribution.

  9. Simpan file dan keluar dari editor. Jika Anda menggunakan editor vi, gunakan ESC + :wq! untuk menyimpan dan keluar dari fstab.

  10. Lanjutkan proses booting dengan memasukkan reboot pada prompt.

  11. Setelah berhasil memperbaiki masalah, proses booting VM akan selesai dan Anda akan melihat prompt login di konsol serial.

  12. Verifikasi bahwa Anda dapat login ke VM menggunakan SSH.

Opsi 3 - Menyelamatkan VM

Opsi ini dapat digunakan jika sandi root tidak ditetapkan atau jika Anda tidak dapat menggunakan mode pengguna tunggal.

Untuk mengetahui informasi selengkapnya, lihat Menyelamatkan VM yang tidak dapat diakses.