Comment forcer automatiquement les disques fsck après un crash dans `systemd`?

18

Comment configurer systemdpour forcer automatiquement les fsckdisques après un crash (mise hors tension matérielle)?

Quand j'ai utilisé sysvinit(sous Arch Linux) comme /sbin/initj'ai utilisé le hack: dans le fichier rc.localI create /forcefsck; dans le rc.local.shutdownje l'enlève. Au démarrage, rc.sysinitactivez forcer fsck s'il /forcefsckexiste.

Comment faire de même en systemd? Peut-être qu'il a des installations intégrées pour l' fsckécrasement automatique ?

GAD3R
la source
Réponse similaire Comment btrfs vérifie une partition racine .
dma_k

Réponses:

20

Vous pouvez forcer fsckau démarrage en passant fsck.mode=force( autopar défaut et skippeut être utilisé pour ignorer la vérification) comme paramètre de ligne de commande du noyau (à partir de la systemdv. 213 , il y a aussi un deuxième paramètre: fsck.repair- pour contrôler comment fscktraiter les systèmes de fichiers impurs au démarrage; les valeurs possibles sont: preenpour fixer ce qui peut être corrigé en toute sécurité, yespour répondre oui à toutes les questions et noest par défaut).


Notez qu'il systemd-fsck ne connaît aucun détail sur des systèmes de fichiers spécifiques et exécute simplement des vérificateurs de système de fichiers spécifiques à chaque type de système de fichiers ( /sbin/fsck.*) .
Maintenant, si votre système de fichiers est xfsou btrfsil s'exécutera /sbin/fsck.xfsou /sbin/fsck.btrfsrespectivement. Si cela ne semble pas fonctionner, vous devriez peut-être consulter la page de manuel pour fsck.xfsou fsck.btrfsrespectivement et examiner le contenu desdits fichiers dans /sbin.

don_crissti
la source
1
Par exemple avec Grub: éditez /etc/default/grub, puis ajoutez fsck.mode=forceà la valeur de GRUB_CMDLINE_LINUX_DEFAULT. Ensuite, exécutez update-grubet reboot.
Yvan
2
ne fonctionne pas pour xfs btw. Mais salut. c'est l'avenir.
Florian Heigl