Bagaimana cara memaksa disk fsck secara otomatis setelah crash di `systemd`?

18

Bagaimana cara mengatur disk systemdsecara otomatis fscksetelah crash (hard poweroff)?

Ketika saya menggunakan sysvinit(di Arch Linux) seperti /sbin/initsaya menggunakan hack: di file rc.localI create /forcefsck; di rc.local.shutdownsaya hapus. Saat boot-up rc.sysinitaktifkan force fsck jika /forcefsckada.

Bagaimana melakukan hal yang sama systemd? Mungkin memiliki fasilitas built-in untuk otomatis fscksetelah naksir?

GAD3R
sumber

Jawaban:

20

Anda dapat memaksa fsckpada saat boot dengan melewati fsck.mode=force( autodefault dan skipdapat digunakan untuk melewati pengecekan sama sekali) sebagai parameter baris perintah kernel (per systemdv. 213 , ada juga parameter kedua: fsck.repair- untuk mengontrol bagaimana fsckmenangani sistem file yang tidak bersih. saat boot; nilai yang mungkin adalah: preenuntuk memperbaiki apa yang dapat diperbaiki dengan aman, yesuntuk menjawab ya untuk semua pertanyaan dan nodefault).


Catatan yang systemd-fsck tidak tahu detail apa pun tentang sistem file tertentu, dan cukup jalankan pemeriksa sistem file yang spesifik untuk setiap jenis sistem file ( /sbin/fsck.*) .
Sekarang, jika filesystem Anda xfsatau btrfsakan dieksekusi /sbin/fsck.xfsatau /sbin/fsck.btrfsmasing - masing. Jika itu sepertinya tidak berhasil mungkin Anda harus memeriksa halaman manual fsck.xfsatau fsck.btrfsmasing-masing dan memeriksa isi file tersebut di /sbin.

don_crissti
sumber
1
Misalnya dengan Grub: edit /etc/default/grub, lalu tambahkan fsck.mode=forceke nilai GRUB_CMDLINE_LINUX_DEFAULT. Kemudian jalankan update-grubdan reboot.
Yvan
2
tidak berfungsi untuk xfs btw. tapi hey. ini masa depan
Florian Heigl