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
.