Aller au contenu

[Debian Sarge] RAID matériel ou logiciel ?


Dudule40

Messages recommandés

Il faut faire d'abord un make oldconfig si je ne m'amuse

Pas d'après ce qu'il m'a dit, lorsque tu fais make menuconfig en ayant remplacé le .config ça suffit et *fait la manip* je confirme (avec Debian Sarge du moins).

Maintenant j'ai un autre problème : lorsque je boot sur mon nouveau noyau, il bloque sur ce message d'erreur :

VFS: Cannot open root device "sda2" or unknown-block(0,0)

Please append a correct "root=" boot option

Kernel panic : VFS: Unable to mount root fs on unknown-block(0,0)

Mot-à-mot je comprends, mais globalement c'est du charabia pour moi. :D

Le technico que j'ai appelé m'a expliqué (si ma mémoire est bonne) qu'en fait mon ancien noyau utilisait le initrd pour lancer mes disques (qui sont en SATA sur un controleur PCI) dont les "pilotes" (j'ai un doute sur le terme) sont en module.

Pour mon nouveau noyau, il faudrait pour que ça marche que ce qui concerne ces disques ne soit plus en modules, mais intégré au noyau (coché en * donc). Il m'a parlé de "lib-SATA" qu'il me fallait mettre en *. Ne l'ayant trouvé (c'est pas faute d'avoir cherché), j'ai coché pas mal de chose recommencé, recoché, recommencé, recoché, recommencé etc... je n'arrive pas à mettre le doit sur ce qu'il me faut.

Alors j'ai plusieurs questions :

- Que fait initrd exactement ?

- Pourquoi le noyau que je compile en reprenant le .config de mon ancien noyau ne l'utilise pas (initrd) ?

- A part tout mettre dans le noyau (makeallyesconfig... je vais le tester de ce pas :merci: Merci Tux), comment puis-je régler proprement mon problème ?

Encore merci d'avance :mad:

[édit : "make allyesconfig" ne résou pas mon problème, j'imagine donc que le problème vient d'ailleurs que ce qui est coché dans mon nouveau noyau, je sèche :D ]

Lien vers le commentaire
Partager sur d’autres sites

T'as vraiment réussi un make allyesconfig?

Moi ça a pris 1/2H à compiler et ça m'a utilisé 700Mo de RAM

En plus, y'avais des erreurs et j'ai dû enlever quelques modules à la main pour que ça puisse compiler...

Et au final, j'avais un noyau de 12Mo!

Donc ça m'étonnerais que tu l'ai fait...

Le make allyesconfig n'est jamais à utiliser (en gros, c'est surtout pour les devs, pour vérifier qu'il n'y a pas de conflits...)

Donc, active le sata en dur, ainsi que le support pour ta carte sata sil :

Device Drivers>SCSI device support>SCSI low-level drivers

[*] Serial ATA (SATA) support

[...]

<*> Silicon Image SATA support

Et n'oublie pas de mettre le support des systèmes de fichiers que tu utilises en dur : ext2, ext3, reiserfs...

Précisions :

- le make menuconfig et make oldconfig ne font pas la même chose : le make oldconfig demande quoi choisir pour chaque nouveau choix par rapport à l'ancien noyau, alors que le make menuconfig met tout par défaut...

- qu'est-ce que l'initrd? réponse dans le tuto noyau

Lien vers le commentaire
Partager sur d’autres sites

Bah écoute, moi il a compilé et fait le .deb avec make allyesconfig (14,8Mo), après je ne suis pas allé verrifié s'il mettait des messages d'erreur au cours de la compilation. La bécanne est neuve c'est peut-être pour ça.

Initrd c'est vrai je n'ai pas pensé à retourner voir le tuto du noyau :yes: (je file de se pas le relire)

Donc, active le sata en dur, ainsi que le support pour ta carte sata sil :

Device Drivers>SCSI device support>SCSI low-level drivers

[*] Serial ATA (SATA) support

[...]

<*> Silicon Image SATA support

Et n'oublie pas de mettre le support des systèmes de fichiers que tu utilises en dur : ext2, ext3, reiserfs...

Je dois me débrouiller comme un manche, mais ce que tu me dis c'est bel et bien fait et j'ai toujours la même erreur...

Peut-être que ça vient de ma manière de mettre un nouveau noyau en place :

- je supprime mon xxxxx.deb dans le repertoire /usr/src/

- je supprime le répertoire /lib/modules/2.6.8

- je vais dans /usr/src/linux

- je supprime le .config, je recopie le fichier de config de l'ancien noyau (trouvé dans /boot) et je le renomme en .config

- et enfin je fais make menuconfig, compilation etc...

C'est comme quand je cherche un objet qui est sous mon nez... c'est là mais je ne trouve pas. Quelqu'un voit ? :incline:

[édit : Je n'ai trouvé que ça dans le thread de tuxx sur initrd. J'irai chercher des infos la dessus un peu plus tard :)

Cependant, en général, tout ce que le noyau a besoin pour booter (contrôleur et système de fichiers) est mis "en dur" dans le noyau, et cet initrd est alors tout simplement inutile...

Si c'est votre cas, vous pouvez tout simplement vous en passer.

Lien vers le commentaire
Partager sur d’autres sites

C'est un peu le problème de la "méthode debian" : on ne sait absolument pas ce qui se passe :ouioui:

Si tu boot sur du lvm (enfin / sur lvm) , il te faut effectivement un initrd...

va voir là : http://www.tldp.org/HOWTO/LVM-HOWTO/index.html

normalement, il doit y avoir un script disponible pour le créer : lvmcreate_initrd ou lvm2create_initrd ...

Lien vers le commentaire
Partager sur d’autres sites

Merci pour le LVM :-D mais pour le moment je veux juste faire fonctionner le RAID *à la "Les bronzés font du ski"* Ca va trop viiiiite :ouioui:

Lorsque je fais "dpkg --install ../kernel-image-2.6.8_1.0_i386.deb" il fait automatiquement ce qu'il faut pour grub (il ne me pose aucune question pour booter sur un éventuel /dev/mdx... mais avant de faire ça, peut-être faudrait-il qu'il fonctionne avec un sdx déjà, et ensuite je mets en place le raid logiciel pout qu'enfin il boot sur un mdx, nan ?). Si ça peut vous éclairer, voici ce qu'il me met :

# dpkg --install ../kernel-image-2.6.8_1.0_i386.deb

(Lecture de la base de données... 53873 fichiers et répertoires déjà installés.)Préparation du remplacement de kernel-image-2.6.8 1.0 (en utilisant .../kernel-image-2.6.8_1.0_i386.deb) ...

Dépaquetage de la mise à jour de kernel-image-2.6.8 ...

Searching for GRUB installation directory ... found: /boot/grub .

Testing for an existing GRUB menu.list file... found: /boot/grub/menu.lst .

Searching for splash image... none found, skipping...

Found kernel: /boot/vmlinuz-2.6.8-2-686

Found kernel: /boot/vmlinuz-2.6.8

Updating /boot/grub/menu.lst ... done

Paramétrage de kernel-image-2.6.8 (1.0) ...

Not updating image symbolic links since we are being updated (1.0)

Searching for GRUB installation directory ... found: /boot/grub .

Testing for an existing GRUB menu.list file... found: /boot/grub/menu.lst .

Searching for splash image... none found, skipping...

Found kernel: /boot/vmlinuz-2.6.8-2-686

Found kernel: /boot/vmlinuz-2.6.8

Updating /boot/grub/menu.lst ... done

J'ai peut-être mis le doigt sur quelque chose qui vous fera sûrement rire si c'est bien ce que je pense (en rouge).

Lien vers le commentaire
Partager sur d’autres sites

je comprends plus rien, tu essaye de monter le raid pendant l'installation, ou après l'installation ?

s'il y a deja ton système de fichier sur sda2 je suis pas sur que tu puisse l'utiliser direct pour monter le raid avec sda2 et sdb2

faut passer par une partition d'échange, le temps de créer le volume raid

ensuite il ne faut pas oublier de changer le label des disque raid (fd avec fdisk)

j'ai jamais testé pendant l'install, mais ca me parait quand meme un poil chaud su tu débute

Lien vers le commentaire
Partager sur d’autres sites

Après l'install...

Mais mon problème ne se situe pas au niveau du raid, pour le moment. Là il faut juste que je compile ce nouveau noyau et que je puisse booter dessus. Le Raid j'en fais mon affaire (mais c'est l'étape suivante). :francais:

Pour résumer : pour installer le raid logiciel, il faut que j'ai en dur dans mon noyau certains "composants" qui pour le moment sont en modules. Là j'en suis à essayer de faire fonctionner ce nouveau noyau avec mon installation actuelle (Cf. mon message juste au-dessus pour le problème).

Lien vers le commentaire
Partager sur d’autres sites

Ouep mon diagnostique était bon (mauvais de recompiler plusieurs fois avec les mêmes fichiers) :byebye:

I. J'ai un nouveau problème :

mkraid /dev/md0 fonctionne bien, mais pas avec /dev/md1...

il m'affiche cette erreur :

#mkraid /dev/md1

/dev/md1: file doesn't exist!

mkraid: aborted.

(In addition to the above messages, see the syslog and /proc/mdstat as well

for potential clues.)

Pourtant, voici /etc/raidtab (je ne sais pas si le problème vient de là) :

# more /etc/raidtab

raiddev /dev/md0

        raid-level 1

          nr-raid-disks 2

          persistent-superblock 1

          chunk-size 16

        device /dev/sda2

          failed-disk 0

        device /dev/sdb2

          raid-disk 1

raiddev /dev/md1

        raid-level 1

          nr-raid-disks 2

          persistent-superblock 1

          chunk-size 16

        device /dev/sda3

          failed-disk 0

        device /dev/sdb3

          raid-disk 1

Ca ne marche pas :

# MAKEDEV /dev/md

/sbin/MAKEDEV: don't know how to make device "/dev/md"

Une idée du problème ?

II. Autre chose, dans un tuto il me marque cette ligne de commande : "dd if=kernal.image of=/de/fd0 bs=2k"

J'aurais juste voulu savoir où trouver ce "kernal.image".

Lien vers le commentaire
Partager sur d’autres sites

J'ai eu ma réponse grâce à ce cher technico, et voici donc :

I. mknod /dev/md1 b 9 1 crée le /dev/md1 comme voulu.

II. "kernal.image" correspond à l'image du noyau linux (comme son nom l'indique) qui se trouve dans /boot et dans mon cas qui s'appelle "vmlinuz-2.6.8-raid1" (qui a été généré lorsque j'ai compilé mon nouveau noyau, mais un fichier au nom similaire se trouve dans le même répertoire pour l'ancien noyau).

PS : Si je demande ici avant d'interroger ce technicien (qui entre nous est un chef), c'est parce que je pense qu'ici il y a des gens compétents et plus ou moins dispos qui peuvent me répondre. Même si ce que je demande est assez spécifique, je ne désespère pas à trouver quelqu'un qui saura être aussi clair et précis dans ses explications que lui, merci pour votre aide. A bientôt (oui oui... chui certain que j'aurai encore des problèmes :-D)

Lien vers le commentaire
Partager sur d’autres sites

Nioob, le retour en force :francais:

J’en suis à essayer de booter sur le noyau raid (l'ancien disque principal est toujours en failed). Voilà la totale pour vous montrer où ça en est :

Jusque là, la partition système se trouvait sur /dev/sda2 :

#################################################

# more /etc/fstab

# /etc/fstab: static file system information.

#

# <file system> <mount point> <type> <options> <dump> <pass>

proc /proc proc defaults 0 0

/dev/md0 / ext3 defaults,errors=remount-ro 0 1

/dev/sda1 none swap sw 0 0

/dev/sdb1 none swap sw 0 0

/dev/fd0 /media/floppy0 auto rw,user,noauto 0 0

#################################################

# df

Sys. de fich.        1K-blocs       Occupé Disponible Capacité Monté sur

/dev/md0               4806936   2373012   2189736  53% /

tmpfs                   258020         0    258020   0% /dev/shm

/dev                   4806936   2373012   2189736  53% /.dev

none                      5120       728      4392  15% /dev

#################################################

# more /etc/raidtab

raiddev /dev/md0

...

device /dev/sda2

failed-disk 0

device /dev/sdb2

raid-disk 1

raiddev /dev/md1

...

device /dev/sda3

failed-disk 0

device /dev/sdb3

raid-disk 1

#################################################

# cat /proc/mdstat

Personalities : [raid0] [raid1]

md1 : active raid1 sdb3[1]

114189952 blocks [2/1] [_U]

md0 : active raid1 sdb2[1]

4883648 blocks [2/1] [_U]

unused devices: <none>

#################################################

# more /boot/grub/menu.lst

...

# Ca c'est mon noyau avec le raid en dur

title           Debian GNU/Linux, kernel 2.6.8-raid1

root            (hd0,1)

kernel          /boot/vmlinuz-2.6.8-raid1 root=/dev/sda2 ro

initrd          /boot/initrd.img-2.6.8-raid1

savedefault

boot

title           Debian GNU/Linux, kernel 2.6.8-raid1 (recovery mode)

root            (hd0,1)

kernel          /boot/vmlinuz-2.6.8-raid1 root=/dev/sda2 ro single

initrd          /boot/initrd.img-2.6.8-raid1

savedefault

boot

# l'ancien noyau

title           Debian GNU/Linux, kernel 2.6.8-2-686

root            (hd0,1)

kernel          /boot/vmlinuz-2.6.8-2-686 root=/dev/sda2 ro

initrd          /boot/initrd.img-2.6.8-2-686

savedefault

boot

title           Debian GNU/Linux, kernel 2.6.8-2-686 (recovery mode)

root            (hd0,1)

kernel          /boot/vmlinuz-2.6.8-2-686 root=/dev/sda2 ro single

initrd          /boot/initrd.img-2.6.8-2-686

savedefault

boot

#################################################

# more /boot/grub/device.map

(hd0)   /dev/sda

(hd1)   /dev/sdb

#################################################

Pour le moment ça boot (d'ailleurs je trouve ça bizard étant donné que dans fstab il n'y a plus sda2, ça doit venir de l’initrd j’imagine) sur mon nouveau noyau. J'ai essayé en remplaçant dans le /boot/grub/menu.list (en passant par l'autre noyau) :

title           Debian GNU/Linux, kernel 2.6.8-raid1

root            (hd0,1)

kernel          /boot/vmlinuz-2.6.8-raid1 root=/dev/sda2 ro

initrd          /boot/initrd.img-2.6.8-raid1

savedefault

boot

PAR

title           Debian GNU/Linux, kernel 2.6.8-raid1

root            (hd0,1)

kernel          /boot/vmlinuz-2.6.8-raid1 root=/dev/md0 ro

initrd          /boot/initrd.img-2.6.8-raid1

savedefault

boot

Il arrive preque à booter, charge un certain nombre de choses, mais s'arrête sur ce message :

The device node /dev/sda for the root filesystem is missing, incorrect, or there is no entry for the root filesystem listed in /etc/fstab.

#################################################

J’ai essayé aussi en faisant ceci :

#mount /dev/md0 /mnt/temp

J’ai ensuite cp –a toute la racine dans /mnt/temp (à l’exception de /proc /sys et /mnt). Mais à chaque reboot il me vide ce répertoire. J’ai remarqué quelque chose que je trouve  bizarre :

# df

Sys. de fich.        1K-blocs       Occupé Disponible Capacité Monté sur

/dev/md0               4806936   2373012   2189736  53% /

tmpfs                   258020         0    258020   0% /dev/shm

/dev                   4806936   2373012   2189736  53% /.dev

none                      5120       728      4392  15% /dev

/dev/md0               4806936   2373012   2189736  53% / mnt/test

# df  /dev/md0

Sys. de fich.        1K-blocs       Occupé Disponible Capacité Monté sur

/dev/md0               4806936   2373012   2189736  53% /

Je suis à court d’idée. Quelqu'un peu m'aider ?

Merci d’avance. :)

Lien vers le commentaire
Partager sur d’autres sites

Archivé

Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.

×
×
  • Créer...