Jump to content

Archived

This topic is now archived and is closed to further replies.

Mephisto

[Résolu] FreeBSD-8.1, mdevs, bsdlabel, ...

Recommended Posts

Bonjour,

Je bosse sur un script, générant nos CD d'installation FreeBSD.

Tout marchait correctement en 4.7, 5.4, 6.2 et 7.2.

Mais depuis 8.1 (probablement 8.0), il semblerait que la population de /dev ne soit pas fait de la même façon.

Plus en détails, notre script procède ainsi :

dd if=/dev/zero of=bootfile.img bs=18k count=4096
dev=`mdconfig -a -t vnode -f bootfile.img`
bsdlabel -w -B -b $GENPATH/boot/boot /dev/$dev minimum4
newfs -O1 -i 4096 -o space -m 1 /dev/${dev}c
mount /dev/${dev}c /mnt
(cd $GENPATH; find . | cpio -dump /mnt)

sachant que minimum4 est défini dans /etc/disktab comme ceci:

minimum4:ty=mfs:se#512:nt#1:rm#300:\
	:ns#11520:nc#1:\
	:pa#11520:oa#0:ba#4096:fa#512:\
	:pc#11520:oc#0:bc#4096:fc#512:

Avec les versions précédentes de FreeBSD, en sortie de bsdlabel, on a deux partitions sur le mdevice ($[dev}a et ${dev}c).

Depuis FreeBSD-8.1, je n'en ai plus qu'une (${dev}a).

Je me suis tapé les sources de bsdlabel et mdconfig.

Puis j'ai eu l'idée de monter une image généré en 8.1 sous 7.2, et vice-versa.

Et donc, il semblerait que l'image de 7.2 n'ait qu'une partition visible sous 8.1.

De même, l'image de 8.1 a bien ses deux partitions reconnues et présentes dans /dev lorsque je l'attache en 7.2.

Indice vraissemblablement inutile : c'est notre toute première release amd64, jusqu'à maintenant, on ne faisait que du i386

Question : comment je fais revenir md0c dans mon /dev en 8.1 ?

Question subsidiaire, mais néanmoins intéressante : wtf ?

Qu'est-ce qui fait que udev - ou peu importe ce qui gère l'ajout du device à /dev - ne voit plus la seconde partition en 8, alors que tout marchait depuis... au moins cinq ans... ?

Share this post


Link to post
Share on other sites

×
×
  • Create New...