NB: Sie müssen entweder als root angemeldet sein oder sudo verwenden , um all dies zu tun ...
- Verwenden Sie Ihren bevorzugten Editor, um die Datei /etc/mdadm/mdadm.conf wie folgt zu erstellen oder zu bearbeiten :
Wenn die Datei noch nicht vorhanden ist, fügen Sie Folgendes in die neue, leere Datei ein:
# mdadm.conf
#
# Please refer to mdadm.conf(5) for information about this file.
#
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 root
# definitions of existing MD arrays
Speicher die Datei
Führen Sie den folgenden Befehl aus, um am Ende der Datei einen Verweis auf Ihre Array-Konfiguration hinzuzufügen:
mdadm --detail --scan >> /etc/mdadm/mdadm.conf
Dies sollte eine Zeile wie die folgende am Ende von mdadm.conf hinzufügen:
ARRAY / dev / md0 level = raid5 num-devices = 3 Metadaten = 00.90 UUID = a44a52e4: 0211e47f: f15bce44: 817d167c
Wenn der Befehl mdadm über der Zeile ARRAY weitere Elemente hinzugefügt hat, entfernen Sie diese. Auf einem meiner Computer gibt der Befehl beispielsweise "mdadm: Metadatenformat 00.90 unbekannt, ignoriert" zurück. vor der ARRAY-Linie.
Ihr Array sollte jetzt beim Booten automatisch erstellt werden und Sie können daher einen Eintrag zu / etc / fstab hinzufügen, um es zu mounten (falls es noch nicht vorhanden ist).
update-initramfs -u
mdadm -Es
stattdessen.grub-install /dev/sda
md.auto=1
... Ich habe dies nicht gründlich getestet, aber angeblich werden sie erkannt und zusammengesetzt (oder zumindest versucht). Aber dann ist kernel.org/doc/html/v4.15/admin-guide/md.html etwas mehrdeutig: Wenn md in den Kernel kompiliert wird (nicht als Modul), werden Partitionen vom Typ 0xfd gescannt und automatisch zusammengesetzt in RAID-Arrays. [...] Ab Kernel 2.6.9 können nur Laufwerke mit einem Superblock vom Typ 0 automatisch erkannt und beim Booten ausgeführt werden. Und es bezieht sich nicht auf md.auto (oder was auch immer es war), also bin ich mir jetzt nicht sicher.Mir ist klar, dass dies eine ältere Frage ist, aber ich hatte eine frustrierende Zeit damit auf der 32-Bit-Version von Ubuntu Server 12.04.
Running hat
mdadm --detail --scan >> /etc/mdadm/mdadm.conf
die Zeile angehängtNach einem Neustart konnte ich / dev / md0 nie sehen. Das
mdadm --detail --scan
nochmal ausführen (ohne das Ergebnis in einer Datei abzulegen) würde ich sehenund manuell montieren
/dev/md/ubuntu:0
würde funktionieren. Letztendlich habe ich das auch in die fstab-Datei geschrieben.Ich bin nicht sicher, was ich falsch gemacht habe, ob dies in Ubuntu 12.04 funktioniert oder ob dies eine schlechte Praxis ist. Ich wollte nur mitteilen, was für mich funktioniert hat.
quelle
Bei Debian Wheezy ist ein weiterer Schritt erforderlich: In
/etc/default/mdadm
Set Autostart von false auf trueAuch musste ich
mdadm -Es >>/etc/mdadm/mdadm.conf
stattdessen die--scan
Option nutzen, da das bei mir nicht funktionierte.quelle
Bearbeiten Sie nun die zu /etc/mdadm/mdadm.conf hinzugefügten Zeilen wie folgt. Löschen Sie alles, außer den grundlegenden Teilen. Es sollte so aussehen
Hinweis: Sie können X in mdX nach Belieben auswählen.
Jetzt neu starten
EDIT: Befehl korrigiert.
quelle
Ich hatte dieses Problem auf meinem Raspberry Pi 2 mit Raspbian GNU / Linux 8 (Jessie). Ich hatte einen RAID - Array auf
/dev/sda1
und/dev/sdb1
die gescheiterten beim Booten montieren. Ich hatte/etc/mdadm/mdadm.conf
den Eintrag in meiner Akte(Ihre Zahlen werden unterschiedlich sein; sehen Sie sich andere Antworten an, wie Sie dies erreichen können.)
Ich hatte
/etc/fstab
den Eintrag in meiner Akte(und gab es natürlich
/data
auch)Wie das OP konnte ich das RAID-Array nach dem Start von Hand zusammenbauen und einbinden, aber es konnte nicht automatisch während des Startvorgangs ausgeführt werden, obwohl es anscheinend richtig eingerichtet war.
Ich konnte das Problem wie folgt lösen. Ich habe das Skript unter untersucht
/etc/init.d/mdadm-raid
und eine Zeile Debug-Code eingefügtls /dev > /home/pi/devices.txt
Neustart und Überprüfung dieser Datei Ich habe erfahren, dass Geräte
/dev/sda
und/dev/sdb
zum Zeitpunkt dermdadm-raid
Initialisierung existierten, aber die Partitionen/dev/sda1
und/dev/sdb1
fehlten. Ich habe die/etc/init.d/mdadm-raid
Datei bearbeitet und die Zeile eingefügtpartprobe
Nach dem Header (dh nach dem,
### END INIT INFO
aber bevor das Skript beginnt). Dadurch wurden die Partitionen erkannt, und dasmdadm-raid
Skript konnte das RAID-Array zusammenstellen, wodurch das Problem behoben wurde. Hoffe das hilft jemandem!quelle
Ich habe damit auf Raspbian mit ein paar externen USB-Festplatten auf einem Raspberry Pi gekämpft. Ich musste mit der Startreihenfolge der Dienste herumspielen, um sicherzustellen, dass mdadm-raid gestartet wurde, nachdem die USB-Laufwerke von udev erkannt wurden, jedoch vor checkfs.sh (das die Dateisysteme beim Booten überprüft). Wenn mdadm-raid zu früh gestartet wurde, waren die Laufwerke nicht verfügbar und daher wurde das Array nicht zusammengestellt. Dies bedeutete, dass fsck anschließend fehlschlug und der Startvorgang zu einer Wartungsaufforderung führte (da das RAID-Array für andere Dienste erforderlich ist).
Das Ändern der Boot-Abhängigkeiten zum Starten von mdadm-raid nach checkroot.sh, aber vor checkfs.sh und dem Ausführen
update-rc.d mdadm-raid defaults
, gefolgt vonupdate-initramfs -uv -k `uname -r`
(Backticks beachtenuname
), wurde (endlich) behoben. Für mich jedenfalls YMMV.quelle
Ich habe es mit versucht
mdadm --create /dev/md/abcdef ...
Ich sehe, dass der Softlink
/dev/md/abcdef
nach einem Neustart bestehen bleibt und wenn nötig über einen Softlink auf das Gerät zugegriffen werden muss.Ist es eine akzeptable Lösung?
quelle
Mit dem Raspberry Pi 3, der
rootdelay=5
das/boot/cmdline.txt
Problem für mich gelöst hat.Der Kredit geht hier .
quelle