Je travaille avec un PC sans ventilateur (des centaines d'entre eux, en fait) qui a des partitions debian 6 et 3 (FAT et 2x ext2). Le système n'a pas de bouton d'alimentation en tant que tel, donc la plupart des gens ont tendance à tirer sur la prise pour la «fermer» plutôt que sur init 0 (ou équivalent). En conséquence, le ou les systèmes de fichiers accumulent des erreurs assez rapidement.
J'ai essayé d'utiliser 'shutdown -rF' pour forcer fsck mais cela ne semble pas fonctionner. Je me demande s'il existe un moyen de dire au système de vérifier chaque point de montage / FS avant leur montage.
J'ai essayé de définir le paramètre fsck dans / etc / fstab. Cela me donne généralement un «Erreurs trouvées. Exécutez le message fsck manuellement.
Y a-t-il d'autres options à essayer?
Réponses:
In
/etc/init.d/checkfs.sh
est la ligneif [ -f /forcefsck ] || grep -s -w -i "forcefsck" /proc/cmdline
, donc fournirforcefsck
sur la ligne de commande du noyau ou générer un/forcefsck
fichier à l'arrêt devrait provoquer un fsck au prochain redémarrage.Pour empêcher les exécutions manuelles de fsck, demandez
fsck
à essayer de corriger automatiquement les erreurs avec l'-y
option en décommentant et en changeant no enyes
dans l'entrée / etc / default / rcS suivante, après la modification, elle devrait ressembler à:Une option (forcefsck ou FSCKFIX) n'implique pas l'autre.
la source
checkfs.sh
. Dans aucun des cas, fsck ne s'est exécuté lorsque j'ai redémarré (via init 6). Je dois manquer quelque chose ici.checkfs.sh
, modifiez seulement / etc / defaults / rcS et exécuteztouch /forcefsck
avant de redémarrer. La dernière commande doit être exécutée avant chaque redémarrage ou juste après le démarrage, mais le script d'initialisation fsck est terminé.Ajoutez le
fsck.mode=force
paramètre Kernel sur votre chargeur de démarrage. Ajoutez cette option à laGRUB_CMDLINE_LINUX_DEFAULT=
variable à l'intérieur/etc/default/grub
. En tant que root, générez un nouveau fichier de configuration grub:[root@host]# grub-mkconfig -o /boot/grub/grub.cfg
Ce paramètre a le même effet que la création du
forcefsck
fichier à l'intérieur de la racine du point de montage.La solution d'utiliser le
checkfs.sh
script conviendra mieux à Debian, mais ne devrait pas fonctionner sur d'autres distributionsla source
J'édite ma réponse:
La commande est:
selon l'argument manpages -c pour tune2fs compte le nombre d'instances de montages pour une partition. Par conséquent, 1 force à vérifier les fs après chaque instance de montage.
( http://man7.org/linux/man-pages/man8/tune2fs.8.html )
la source