Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Debian Wheezy + btrfs + /etc/init.d/checkroot.sh

7 réponses
Avatar
Doug713705
Bonjour à toutes, tous,

J'ai récemment mis à jour une Debian Squeeze vers une Wheezy et tout
c'est à peu près bien passé (en tous cas j'ai fini par m'en sortir).

Cependant je m'étonne d'un 'bug' assez moche.
Explication :
Pour une raison totalement indéterminée mon système de fichiers est
intégralement en btrfs, y compris /

Or, si j'ai bien compris ce que j'en ai lu, btrfs ne propose pas
(encore) de moyen de vérification de son système de fichiers.
Bien évidement, au boot, une bonne Debian lance toujours une
vérification du système de fichiers de la racine avant quoi que ce soit.

Et là, paf le chien !

Le système refuse d'aller plus loin croyant que le fsck foire alors
qu'il est tout simplement impossible de le faire.

J'ai fini par m'en sortir en modifiant /etc/init.d/checkroot.sh[1] après
avoir booté sur un rescueCD installé sur clef USB.

Cependant je m'interroge sur :
- La possibilité d'améliorer de script et
notamment le moyen en sh de detecter le type de fs de la racine et de
passer outre le fsck.
- Les raisons pour lesquelles cela n'existe pas déjà (la réponse à le
première interrogation apportera certainement de la lumière à cette
seconde interrogation).
- Le moyen 'officiel' de gérer ça proprement (après tout Squeeze n'a pas
ce problème !).

Néanmoins c'est le genre de piège à la con dont ne sort pas un débutant
et je n'ai pas le souvenir du moindre avertissement concernant ce
problème quand j'ai installé Squeeze avec un tel système de fichiers sur
la racine.

Merci d'avance pour vos réponses à mes interrogations.

[1] J'ai simplement commenté le code qui gérait le cas d'erreur afin
qu'il laisse le script continuer son bonhomme de chemin, ce qui est
primordiale puisque ce même script doit finir par remonter / en rw.
--
Doug - Linux user #307925 - Slackware64 roulaize ;-)
http://usenet-fr.chainon-marquant.org
http://newsportal.chainon-marquant.org
http://news.chainon-marquant.org

7 réponses

Avatar
xavier
Doug713705 wrote:

Or, si j'ai bien compris ce que j'en ai lu, btrfs ne propose pas
(encore) de moyen de vérification de son système de fichiers.
Bien évidement, au boot, une bonne Debian lance toujours une
vérification du système de fichiers de la racine avant quoi que ce soit.

Et là, paf le chien !

Le système refuse d'aller plus loin croyant que le fsck foire alors
qu'il est tout simplement impossible de le faire.



Ce n'est pas ce que j'en ai lu. Il existe bel et bien btrfsck, du moins
dans la version Oracle. Je ne sais pas si Debian l'a implémenté.

Est-ce que par hasard ta mise à jour n'aurait pas "oublié" de mettre à
jour checkroot.sh ? Il y a un CVSWeb chez Debian qui te permette de
vérifier rapidement ?

--
XAv
In your pomp and all your glory you're a poorer man than me,
as you lick the boots of death born out of fear.
(Jethro Tull)
Avatar
Doug713705
Le 30-01-2012, Xavier nous expliquait dans
fr.comp.os.linux.configuration :

Doug713705 wrote:

Or, si j'ai bien compris ce que j'en ai lu, btrfs ne propose pas
(encore) de moyen de vérification de son système de fichiers.
Bien évidement, au boot, une bonne Debian lance toujours une
vérification du système de fichiers de la racine avant quoi que ce soit.

Et là, paf le chien !

Le système refuse d'aller plus loin croyant que le fsck foire alors
qu'il est tout simplement impossible de le faire.



Ce n'est pas ce que j'en ai lu. Il existe bel et bien btrfsck, du moins
dans la version Oracle. Je ne sais pas si Debian l'a implémenté.



J'ai cru comprendre que c'était encore 'under heavy development'.
Je ne crois pas que ce soit vraiment fiable et probablement pas assez
pour Debian.

Est-ce que par hasard ta mise à jour n'aurait pas "oublié" de mettre à
jour checkroot.sh ?



Peut-être. Néanmoins la Squeeze indiquait déjà une erreur avec
btrfck (genre 'no such command') mais cela n'empèchait pas l'init de
terminer son boulot.

Il y a un CVSWeb chez Debian qui te permette de
vérifier rapidement ?



C'est une question ?
Si oui je n'ai pas la réponse, si non je veux bien l'url ;-)

--
Doug - Linux user #307925 - Slackware64 roulaize ;-)
http://usenet-fr.chainon-marquant.org
http://newsportal.chainon-marquant.org
http://news.chainon-marquant.org
Avatar
xavier
Doug713705 wrote:

> Il y a un CVSWeb chez Debian qui te permette de
> vérifier rapidement ?

C'est une question ?
Si oui je n'ai pas la réponse, si non je veux bien l'url ;-)



Oui, c'était un question :-) Mais une recherche rapide m'a assuré que
non.

Yapuka dépaqueter les sources de Wheezy pour vérifier...

--
XAv
In your pomp and all your glory you're a poorer man than me,
as you lick the boots of death born out of fear.
(Jethro Tull)
Avatar
Arnaud Gomes-do-Vale
Doug713705 writes:

Or, si j'ai bien compris ce que j'en ai lu, btrfs ne propose pas
(encore) de moyen de vérification de son système de fichiers.
Bien évidement, au boot, une bonne Debian lance toujours une
vérification du système de fichiers de la racine avant quoi que ce soit.

Et là, paf le chien !

Le système refuse d'aller plus loin croyant que le fsck foire alors
qu'il est tout simplement impossible de le faire.



Et inhiber le fsck en mettant le dernier champ de la ligne à 0 dans
/etc/fstab, ça ne suffit pas ? D'après une lecture rapide des scripts
d'init des Debian que j'ai sous le coude (une squeeze et une sid d'il y
a une paire de mois), ça a l'air prévu.

--
Arnaud
http://blogs.glou.org/arnaud/
Avatar
Emmanuel Florac
Le Mon, 30 Jan 2012 23:04:25 +1100, Doug713705 a écrit:


Peut-être. Néanmoins la Squeeze indiquait déjà une erreur avec btrfck
(genre 'no such command') mais cela n'empèchait pas l'init de terminer
son boulot.



Il suffit de le créer alors :

ln -s /usr/bin/true /sbin/btrfsck

--
Most software today is very much like an Egyptian pyramid with millions
of bricks piled on top of each other, with no structural integrity, but
just done by brute force and thousands of slaves.
Alan Kay
Avatar
Doug713705
Le 30-01-2012, Arnaud Gomes-do-Vale nous expliquait dans
fr.comp.os.linux.configuration :

Et inhiber le fsck en mettant le dernier champ de la ligne à 0 dans
/etc/fstab, ça ne suffit pas ?



Si, c'est juste qu'il faut savoir ne pas oublier les fondamentaux ;-)
Merci !

--
Doug - Linux user #307925 - Slackware64 roulaize ;-)
http://usenet-fr.chainon-marquant.org
http://newsportal.chainon-marquant.org
http://news.chainon-marquant.org
Avatar
Doug713705
Le 30-01-2012, Emmanuel Florac nous expliquait dans
fr.comp.os.linux.configuration :

Le Mon, 30 Jan 2012 23:04:25 +1100, Doug713705 a écrit:


Peut-être. Néanmoins la Squeeze indiquait déjà une erreur avec btrfck
(genre 'no such command') mais cela n'empèchait pas l'init de terminer
son boulot.



Il suffit de le créer alors :

ln -s /usr/bin/true /sbin/btrfsck



Ça m'a l'air un peu crado comme astuce par contre c'est probablement
efficace.

--
Doug - Linux user #307925 - Slackware64 roulaize ;-)
http://usenet-fr.chainon-marquant.org
http://newsportal.chainon-marquant.org
http://news.chainon-marquant.org