Bonjour,
Avant toute chose : je suis sur debian squeeze, tenue à jour.
Une question simple, souvent posée sur internet, mais à laquelle je n'ai pu trouver aucune réponse satisfaisante à ce jour.
Au boot, la vérification d'un filesystem par fsck peut-être interrompue par un Ctrl-C sans aucun problème. C'est très pratique lorsqu'on boot son portable pour faire une présentation devant des gens, par exemple.
Le problème, c'est quand la partition en train d'être vérifiée est la partition root. Alors le filesystem est laissé en mode lecture seule après l'interruption, ce qui empêche la machine de démarrer correctement, et m'oblige à faire un hard reset.
D'après ce que j'ai pu lire, ceci n'est manifestement pas considéré comme un bug par Debian, et je ne comprend pas pourquoi. Pourquoi l'interruption ne serait-elle pas possible pour le root fs ? Même en admettant qu'il y ait une raison valable à cela, la moindre des choses serait-alors de faire en sorte que le script ignore le Ctrl-C.
Eclaircissements bienvenus (mais toute réponse à base de "c'est pas bien de bypasser fsck" se verra balayée par mon plus viril mépris ;-) ) ...
Question subsidiaire : si je dois ouvrir un bug report, sur quel paquet me suggérez-vous de le faire ? A priori c'est un des scripts d'initialisation qui est en cause, mais je ne sais pas trop lequel (checkroot.sh ? init ? ...)
Bonne soirée à tous
Pierre
# partition importante
Posté par NeoX . Évalué à 2.
la partition ROOT (/) est une partition importante sans laquelle rien ne peut fonctionner.
si elle n'est pas clean, cela me semble risqué d'aller ecrire de nouvelles infos dedans.
donc soit tu fais un check, soit tu l'ouvres en lecture seule pour ne pas corrompre les infos qu'il y a dedans.
ca me semble donc etre une bonne pratique que celle de debian.
maintenant tu dois pouvoir changer ca dans les options du fstab (les chiffres à la fin de la ligne)
[^] # Re: partition importante
Posté par Pierre Berger . Évalué à 1.
Rahhh, je vous avais prévenu que je voulais pas de réponse de froussard ! :-)
En même, temps, il peut aussi y avoir des informations essentielles sur d'autres partitions :D
Ce n'est pas parce que fsck se lance (ni même parce que je l'ai interrompu ; c'est très bien supporté par le checker depuis plusieurs années déjà, en tout cas pour l'ext3) que la partition n'est pas clean. Ca veut juste dire que j'ai mounté mon fs un certain nombre de fois.
De toute façon, même si c'était mal de faire ça (mais, encore une fois, ce n'est pas le cas), il y a des cas (une présentation importante à faire immédiatement, par exemple) ou on a un peu envie d'oublier les bonnes pratiques.
Et, encore une fois, même si c'était volontaire de la part de Debian, pourquoi ne pas ignorer le SIGINT plutôt que d'interrompre le check, puis d'échouer lamentablement dans le boot quelques minutes plus tard, parce que le filesystem a été laissé en read-only.
Effectivement, j'avais regardé de ce côté là. Mais je n'ai rien trouvé de très satisfaisant. Je peux désactiver le fsck de manière permanente, mais ce n'est pas ce que je veux faire. Je voudrais juste pouvoir l'annuler sur le moment quand vraiment je suis à la bourre, et que mon PC continue à démarrer normalement.
Merci pour ta réponse,
Bonne soirée
# /etc/fstab
Posté par maxix . Évalué à 1.
Et si tu change le paramètre de fstab de 1 a 2? (ie. traiter / comme les autres), et en retirant l’éventuelle "errors=remount-ro", ça te remet toujours le même comportement?
[^] # Re: /etc/fstab
Posté par maxix . Évalué à 1.
[...] paramètre "pass" de 1 a 2) [...]
# Et sinon...
Posté par Pierre Tramal (site web personnel) . Évalué à 2.
Cela ne répond pas directement à la question, mais les options -c et -i de tune2fs(8) permettent de désactiver ces vérifications automatiques (cependant, cela peut laisser inapercues des corruptions et conduire à des pertes de données).
# tune2fs -c 0 -i 0 /dev/sdaX
# Avant le boot
Posté par Sébastien Koechlin . Évalué à 2.
Lors du boot, on spécifie dans les options du kernel que l'on veut la racine en 'ro', read-only.
Voici une piste à creuser (passe devant, je regarde):
Il faut alors ajouter une entrée dans grub et c'est réglé.
Personnellement, ce que je regrette, c'est que le fsck ne se fasse pas à l'extinction. Lorsqu'il ne reste plus qu'un ou deux montage ou quelques jours avant le fsck, alors le forcer lors de l'extinction. Le Ctrl-C permettant d'abandonner.
Hélas, je n'ai jamais pris le temps de l'implémenter.
Ah, et puis je n'éteins quasiment jamais les machines. Elles passent très bien en veille, le démarrage est beaucoup plus rapide, et je les reboote tous les quelques mois pour upgrade du kernel.
# A essayer ...
Posté par Pierre Berger . Évalué à 0.
Merci à tous pour vos réponses.
@maxix
Oui ce paramètre m'intrigue, mais je n'ai pas encore osé le modifier. Quelqu'un sait il si il y a une raison particulière au fait que root soit vérifié en premier ? Que va-t-il se passer si à cause d'une modification sur le "pass" de fstab, le filesystem root est checké après avoir été monté ? Faudrait que je me grave un livecd et puis que j'essaye. Je posterai les résultats ici.
@Sebastien
Ca je dois avouer que ça me botte pas trop (courageux mais pas téméraire, hein ...)
C'est vrai que c'est une solution qui se défend bien. Dans mon cas c'est un peu pénible, parce que j'utilise synergy de manière intensive, et qu'il supporte mal la sortie de veille.
A bientôt,
Pierre
# XFS
Posté par dinzen . Évalué à 1.
Racine au format XFS, pas besoin de fsck.
$ man fsck.xfs
do nothing successfully
[^] # Re: XFS
Posté par patrick_g (site web personnel) . Évalué à 3.
Avec Ext4 il y a des fsk périodiques mais ils sont beaucoup plus rapides qu'avec Ext3.
De manière générale je ne vois plus trop l'intérêt d'utiliser Ext3. Certes Squeeze l'utilise encore par défaut mais c'est tellement simple de spécifier qu'on veut du Ext4 lors de l'install que c'est presque criminel de ne pas le faire ;-)
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.