Après le démarrage, mon périphérique RAID1 ( /dev/md_d0
*) passe parfois dans un état drôle et je ne peux pas le monter.
* À l'origine, j'ai créé, /dev/md0
mais il s'est en quelque sorte transformé en /dev/md_d0
.
# mount /opt
mount: wrong fs type, bad option, bad superblock on /dev/md_d0,
missing codepage or helper program, or other error
(could this be the IDE device where you in fact use
ide-scsi so that sr0 or sda or so is needed?)
In some cases useful info is found in syslog - try
dmesg | tail or so
Le périphérique RAID semble être inactif d'une manière ou d' une autre:
# cat /proc/mdstat
Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5]
[raid4] [raid10]
md_d0 : inactive sda4[0](S)
241095104 blocks
# mdadm --detail /dev/md_d0
mdadm: md device /dev/md_d0 does not appear to be active.
La question est de savoir comment réactiver l'appareil (en utilisant mdmadm
, je présume)?
(D'autres fois, il est correct (actif) après le démarrage, et je peux le monter manuellement sans problème. Mais il ne se montera toujours pas automatiquement même si je l'ai dans /etc/fstab
:
/dev/md_d0 /opt ext4 defaults 0 0
Donc, une question bonus: que dois-je faire pour que le périphérique RAID se monte automatiquement /opt
au démarrage? )
Il s'agit d'une station de travail Ubuntu 9.10. Informations générales sur ma configuration RAID dans cette question .
Edit : Mon /etc/mdadm/mdadm.conf
ressemble à ceci. Je n'ai jamais touché ce fichier, du moins à la main.
# by default, scan all partitions (/proc/partitions) for MD superblocks.
# alternatively, specify devices to scan, using wildcards if desired.
DEVICE partitions
# auto-create devices with Debian standard permissions
CREATE owner=root group=disk mode=0660 auto=yes
# automatically tag new arrays as belonging to the local system
HOMEHOST <system>
# instruct the monitoring daemon where to send mail alerts
MAILADDR <my mail address>
# definitions of existing MD arrays
# This file was auto-generated on Wed, 27 Jan 2010 17:14:36 +0200
Dans /proc/partitions
la dernière entrée se trouve md_d0
au moins maintenant, après le redémarrage, lorsque l'appareil se trouve être à nouveau actif. (Je ne sais pas si ce serait la même chose quand il est inactif.)
Résolution : comme Jimmy Hedman l'a suggéré , j'ai pris la sortie de mdadm --examine --scan
:
ARRAY /dev/md0 level=raid1 num-devices=2 UUID=de8fbd92[...]
et l'ajoute /etc/mdadm/mdadm.conf
, ce qui semble avoir résolu le problème principal. Après avoir changé /etc/fstab
pour réutiliser /dev/md0
(au lieu de /dev/md_d0
), le périphérique RAID est également monté automatiquement!
mdadm --examine --scan
produitARRAY /dev/md0 level=raid1 num-devices=2 UUID=...
(Notez le md0 au lieu de md_d0!) Je l'ai mis dans le fichier mdadm.conf (manuellement, car il y avait un problème avec sudo et>>
("autorisation refusée"), et sudo est requis) et j'ai également mis à jour fstab à utiliser md0 (pas md_d0) à nouveau. Maintenant, je ne semble plus rencontrer le problème "inactif" et le périphérique RAID se monte automatiquement à / opt au démarrage. Donc merci!sudo ... >> mdadm.conf
est que le shell ouvre les fichiers redirigés avant l'exécution de sudo. La commandesu -c '.... >> mdadm.conf'
devrait fonctionner.J'ai constaté que je dois ajouter le tableau manuellement
/etc/mdadm/mdadm.conf
afin de le faire monter par Linux au redémarrage. Sinon, j'obtiens exactement ce que vous avez ici - desmd_d1
appareils inactifs, etc.Le fichier conf devrait ressembler à ci-dessous - c'est-à-dire une
ARRAY
ligne pour chaque périphérique md. Dans mon cas, les nouveaux tableaux manquaient dans ce fichier, mais si vous les avez répertoriés, ce n'est probablement pas une solution à votre problème.Ajoutez un tableau par périphérique md et ajoutez-les après le commentaire inclus ci-dessus, ou si aucun commentaire n'existe, à la fin du fichier. Vous obtenez les UUID en faisant
sudo mdadm -E --scan
:Comme vous pouvez le voir, vous pouvez à peu près simplement copier la sortie du résultat de l'analyse dans le fichier.
Je lance ubuntu desktop 10.04 LTS, et pour autant que je me souvienne, ce comportement diffère de la version serveur d'Ubuntu, mais il y a si longtemps que j'ai créé mes périphériques md sur le serveur, je me trompe peut-être. Il se peut aussi que je viens de rater une option.
Quoi qu'il en soit, l'ajout du tableau dans le fichier conf semble faire l'affaire. J'ai exécuté le raid 1 et le raid 5 ci-dessus pendant des années sans aucun problème.
la source
Avertissement: Tout d'abord, permettez-moi de dire que ce qui suit (en raison de l'utilisation de "--force") me semble risqué, et si vous avez des données irrécupérables, je vous recommande de faire des copies des partitions concernées avant de commencer à essayer l'une des les choses ci-dessous. Cependant, cela a fonctionné pour moi.
J'ai eu le même problème, avec un tableau apparaissant comme inactif, et rien de ce que j'ai fait, y compris le "mdadm --examine --scan> /etc/mdadm.conf", comme suggéré par d'autres ici, n'a aidé du tout.
Dans mon cas, quand il a essayé de démarrer la matrice RAID-5 après un remplacement de disque, il disait qu'il était sale (via
dmesg
):Le faire apparaître comme inactif dans
/proc/mdstat
:J'ai trouvé que tous les appareils avaient les mêmes événements, sauf le lecteur que j'avais remplacé (
/dev/sdb4
):Cependant, les détails de la baie ont montré qu'il y avait 4 appareils sur 5 disponibles:
(Ce qui précède provient de la mémoire de la colonne "État", je ne le trouve pas dans mon tampon de défilement).
J'ai pu résoudre ce problème en arrêtant le tableau puis en le réassemblant:
À ce stade, la baie était en place, fonctionnant avec 4 des 5 périphériques, et j'ai pu ajouter le périphérique de remplacement et sa reconstruction. Je peux accéder au système de fichiers sans aucun problème.
la source
J'avais des problèmes avec Ubuntu 10.04 où une erreur dans FStab empêchait le serveur de démarrer.
J'ai exécuté cette commande comme mentionné dans les solutions ci-dessus:
Cela ajoutera les résultats de "mdadm --examine --scan" à "/etc/mdadm/mdadm.conf"
Dans mon cas, c'était:
Il s'agit d'un fakeraid 0. Ma commande dans / etc / fstab pour le montage automatique est:
La chose importante ici est que vous avez "nobootwait" et "nofail". Nobootwait ignorera tous les messages système qui vous empêchent de démarrer. Dans mon cas, c'était sur un serveur distant, donc c'était essentiel.
J'espère que cela aidera certaines personnes.
la source
Vous pouvez activer votre appareil md avec
Je suppose qu'un script de démarrage démarre trop tôt, avant que l'un des membres du RAID ne soit découvert ou un problème similaire. Comme solution de contournement rapide et sale, vous devriez pouvoir ajouter cette ligne à /etc/rc.local:
Modifier: apparemment, votre /etc/mdadm/mdadm.conf contient toujours l'ancien nom de configuration. Modifiez ce fichier et remplacez les occurrences de md0 par md_d0.
la source
mount /dev/md_d0
en/etc/rc.local
fonctionne très bien.mdadm -A /dev/md_d0
d'autre part échoue avec ce message d'erreur dans les deux cas (donc je ne pouvais pas l'utiliser avant cet&&
opérateur). Quoi qu'il en soit, la moitié du problème semble résolu donc +1 pour cela./proc/partitions
cependant); voir la question modifiée. Je n'ai jamais touché mdadm.conf - quel est l'outil qui le génère automatiquement?/etc/rc.local
solution de contournement car il semble que tout fonctionne correctement: superuser.com/questions/117824/… :)md_d0 : inactive sda4[0](S)
semble incorrect pour une matrice RAID1. Il semble suggérer que la matrice n'a pas de périphériques actifs et un périphérique de rechange (indiqué par le (S), vous verriez (F) là pour un périphérique défectueux et rien pour un périphérique OK / actif) - pour une matrice RAID1 qui n'est pas ne fonctionne pas dégradé, il devrait y avoir au moins deux périphériques OK / actifs (et pour une matrice dégradée, au moins un périphérique OK / actif) et vous ne pouvez pas activer une matrice RAID1 sans aucun périphérique non disponible non défaillant (comme pièces de rechange ne contiennent pas de copie des données tant qu'elles ne sont pas rendues actives lorsqu'un autre disque tombe en panne). Si je lis bien cette/proc/mdstat
sortie, vous ne pourrez pas activer le tableau dans son état actuel.La machine contient-elle des disques physiques qui n'ont pas pu tourner? Répertorie
ls /dev/sd*
tous les lecteurs et partitions que vous attendez normalement de voir sur cette machine?la source
echo active > /sys/block/md0/md/array_state
j'ai travaillé pour moi, ce qui a permis de faire apparaître mon RAID comme RAID1 avec disque manquant au lieu de RAID0 avec disque de rechange uniquement.J'ai eu un problème similaire ... mon serveur ne montait pas md2 après avoir développé les partitions des périphériques associés. En lisant ce fil, j'ai trouvé que le périphérique RAID md2 avait un nouvel UUID et que la machine essayait d'utiliser l'ancien.
Comme suggéré ... en utilisant la sortie 'md2' de
J'ai modifié
/etc/mdadm/mdadm.conf
et remplacé l'ancienne ligne UUID par la seule sortie de la commande ci-dessus et mon problème a disparu.la source
Lorsque vous faites semblant de faire quelque chose avec,
/dev/md[012346789}
cela va/dev/md{126,127...}
./dev/md0
continue monté à/dev/md126
ou/dev/md127
vous devez:umount
/dev/md127
ou umount/dev/md126
.Ceci est temporaire pour vous permettre d'exécuter des commandes et certaines applications sans arrêter votre système.
la source
Un moyen simple de faire fonctionner la baie en supposant qu'il n'y a pas de problème matériel et que vous disposez de suffisamment de lecteurs / partitions pour démarrer la baie est le suivant:
Il se peut que pour quelque raison que ce soit, le tableau est correct, mais quelque chose l'a empêché de démarrer ou de se construire. Dans mon cas, c'était parce que mdadm ne savait pas que le nom d'origine de la baie était md127 et que tous les disques étaient débranchés pour cette baie. Lors de la réinstallation, j'ai dû assembler manuellement (probablement un bogue où mdadm pensait que la baie était déjà active en raison de l'ancien nom de la baie hors ligne).
la source