Come impostare systemd per forzare automaticamente fsck dischi dopo un arresto anomalo (spegnimento hardware)?
Quando ho usato sysvinit (in Arch Linux) come /sbin/init Ho usato l'hack:in rc.local Creo /forcefsck file; nel rc.local.shutdown lo rimuovo. All'avvio rc.sysinit abilita force fsck se /forcefsck esiste.
Come fare lo stesso in systemd ? Forse ha funzionalità integrate per fsck automatico dopo la cotta?
Risposta accettata:
Puoi forzare fsck all'avvio passando fsck.mode=force (auto è predefinito e skip può essere usato per saltare del tutto il controllo) come parametro della riga di comando del kernel (a partire da systemd v. 213, c'è anche un secondo parametro:fsck.repair – per controllare come fsck si occuperà di file system sporchi all'avvio; i valori possibili sono:preen per correggere ciò che può essere risolto in sicurezza, yes per rispondere sì a tutte le domande e no è predefinito).
Nota che systemd-fsck non conosce alcun dettaglio su filesystem specifici ed esegue semplicemente controlli del filesystem specifici per ogni tipo di filesystem ( /sbin/fsck.* ) .
Ora, se il tuo filesystem è xfs o btrfs eseguirà /sbin/fsck.xfs o /sbin/fsck.btrfs rispettivamente. Se non sembra funzionare forse dovresti controllare la pagina di manuale per fsck.xfs o fsck.btrfs rispettivamente ed esaminare il contenuto di detti file in /sbin .