Kemarin, salah satu komputer kami turun ke grub
shell atau sejujurnya, saya tidak yakin shell apa itu ketika kami menyalakan mesin.
Ini menunjukkan bahwa itu tidak dapat me-mount sistem file root atau sesuatu dalam pengertian ini, karena inkonsistensi.
Saya berlari, saya percaya:
fsck -fy /dev/sda2
Reboot dan masalahnya hilang.
Ini dia bagian pertanyaannya:
Saya sudah memiliki di crontab root-nya:
@reboot /home/ruzena/Development/bash/fs-check.sh
sedangkan scriptnya berisi:
#!/bin/bash
touch /forcefsck
Memikirkannya, saya tidak tahu, mengapa saya membuat file skrip untuk perintah yang begitu singkat, tapi bagaimanapun…
Selanjutnya, dalam file:
/etc/default/rcS
Saya telah mendefinisikan:
FSCKFIX=yes
Jadi saya tidak mengerti. Bagaimana situasinya bisa muncul?
Apa yang harus saya lakukan untuk memaksa pemeriksaan sistem file root (dan secara opsional memperbaiki) saat boot?
Atau apakah dua hal ini maksimal yang bisa saya lakukan?
OS: Linux Mint 18.x Kayu Manis 64-bit.
fstab
:
cat /etc/fstab | grep ext4
menunjukkan:
UUID=a121371e-eb12-43a0-a5ae-11af58ad09f4 / ext4 errors=remount-ro 0 1
grub
:
fsck.mode=force
sudah ditambahkan ke grub
konfigurasi.
Jawaban yang Diterima:
ext4
pemeriksaan sistem file saat boot
Diuji pada OS:Linux Mint 18.x di Mesin Virtual
Informasi dasar
/etc/fstab
memiliki fsck
urutkan sebagai kolom terakhir (ke-6), misalnya:
<file system> <mount point> <type> <options> <dump> <fsck>
UUID=2fbcf5e7-1234-abcd-88e8-a72d15580c99 / ext4 errors=remount-ro 0 1
FSCKFIX=yes
variabel di /etc/default/rcS
Ini akan mengubah fsck menjadi perbaikan otomatis, tetapi tidak paksa cek fsck.
Dari man rcS
:
FSCKFIX When the root and all other file systems are checked, fsck is invoked with the -a option which means "autorepair". If there are major inconsistencies then the fsck process will bail out. The system will print a message asking the administrator to repair the file system manually and will present a root shell prompt (actually a sulogin prompt) on the console. Setting this option to yes causes the fsck commands to be run with the -y option instead of the -a option. This will tell fsck always to repair the file systems without asking for permission.
Dari man tune2fs
If you are using journaling on your filesystem, your filesystem will never be marked dirty, so it will not normally be checked.
Mulai dengan
Mengatur berikut
FSCKFIX=yes
dalam file
/etc/default/rcS
Periksa dan catat terakhir kali fs diperiksa:
sudo tune2fs -l /dev/sda1 | grep "Last checked"
Kedua opsi ini TIDAK berfungsi
-
Meneruskan
-F
(paksafsck
saat reboot) argumen keshutdown
:shutdown -rF now
Tidak; lihat:
man shutdown
. -
Menambahkan
/forcefsck
file kosong dengan:touch /forcefsck
Script ini sepertinya menggunakan ini:
/etc/init.d/checkfs.sh /etc/init.d/checkroot.sh
apakah TIDAK bekerja saat reboot, tetapi file telah dihapus.
Diverifikasi oleh:
sudo tune2fs -l /dev/sda1 | grep "Last checked" sudo less /var/log/fsck/checkfs sudo less /var/log/fsck/checkroot
Ini sepertinya log untuk
init
skrip.
Saya ulangi, kedua opsi ini TIDAK berfungsi!
Terkait:Bisakah Macbook dual boot Snow Leopard dan Lion??Kedua metode ini BISA bekerja
-
sakelar boot kernel systemd-fsck
Mengedit
grub
utama file konfigurasi:sudoedit /etc/default/grub
GRUB_CMDLINE_LINUX="fsck.mode=force"
sudo update-grub sudo reboot
Ini memang melakukan pemeriksaan sistem file sebagaimana diverifikasi dengan:
sudo tune2fs -l /dev/sda1 | grep "Last checked"
Catatan:Ini MELAKUKAN pemeriksaan, tetapi untuk memaksa perbaikan juga, Anda perlu menentukan
fsck.repair="preen"
, ataufsck.repair="yes"
. -
Menggunakan
tune2fs
untuk mengatur jumlah pemasangan sistem file sebelum melakukanfsck
,man tune2fs
tune2fs' info is kept in the file system superblock
-c
switch menyetel berapa kali untuk memasang fs sebelum memeriksa fs.sudo tune2fs -c 1 /dev/sda1
Verifikasi dengan:
sudo tune2fs -l /dev/sda1
MELAKUKAN . ini bekerja seperti yang diverifikasi dengan:
sudo tune2fs -l /dev/sda1 | grep "Last checked"
Ringkasan
Untuk memaksa fsck
pada setiap boot di Linux Mint 18.x, gunakan tune2fs
, atau fsck.mode=force
, dengan fsck.repair=preen
opsional / fsck.repair=yes
, baris perintah kernel beralih.