Ich habe einen brandneuen PC, der von einem einzigen SSD-Laufwerk gebootet wird (win7 + debian). Ich habe ein paar 2T-Festplatten hinzugefügt, die ich sowohl unter Win als auch unter Linux verwenden möchte. Mein Ziel ist es, zwei separate RAID-1-Arrays auf vier 1T-Partitionen zu haben.
Ich habe mit der Partitionierung unter Linux begonnen (/ dev / sd [de] [12]) und das Array dort zu bauen funktioniert wie erwartet (mit mdmadmin --create /dev/md0 --level=mirror --raid-devices=2 /dev/sd[de]2
).
Leider scheint Win7 nicht in der Lage zu sein, die "verbleibenden" freien Partitionen (/ dev / sd [de] 1) zu verwenden: Es akzeptiert meinen Eingang, verschluckt sich dann aber mit "nicht genügend Speicherplatz auf dem Gerät". Ich habe auch versucht, die Größe der Partitionen zu reduzieren (einige Posts implizieren, dass Win eine 1-MB-Overhead-Partition benötigt), aber ich konnte es nicht zum Laufen bringen.
Ich habe dann alle Partitionen gelöscht und "Volumes" auf Win7 erstellt und auch dies funktioniert wie angekündigt.
Leider werden 1T-Volumes erstellt, es werden jedoch auch zwei Partitionen erstellt: die "kleine 1MB" und eine weitere, die sich über den Rest der Festplatte erstreckt; Kein Platz mehr für das Linux-Array.
Kann jemand eine Strategie vorschlagen, um zwei 1-TB-RAID-1-Festplatten-Arrays auf zwei 2-TB-physischen Festplatten zu erstellen, von denen eine unter Win7 und eine unter Linux verwendet werden kann?
HINWEIS: Linux-Array ist ein LVM-Volume, das hauptsächlich für den Speicher von XEN-VMs vorgesehen ist. Daher ist das Mounten des Win-Arrays (ntfs) unter Linux leider keine Option.
mdmadmin --create
. Alles danach ist Standard-Linux-Management.Antworten:
Sie benötigen LDM-Unterstützung ( Logical Disk Manager ) in Ihrer Linux-Distribution, um auf dynamische Windows-Datenträger zugreifen zu können. Es ist erforderlich, dass diese Datenträger in Windows als dynamisch konfiguriert sind, um gespiegelte Volumes zu erstellen.
Es ist mir unklar, ob Debian die LDM-Unterstützung in ihren Kernel kompiliert (kein Debian-Benutzer, also kann ich nicht sagen). Es gibt LDM-Unterstützung im Kernel . Der Kernel kann die LDM-Datenbank auf der Festplatte abfragen und die Volumes im Dateisystem "/ dev" präsentieren. Nichts hindert Sie daran, ein LDM-Volume zu erstellen und Linux-Software-RAID und ein reines Linux-Dateisystem darauf zu verwenden.
Neben dem Kerneltreiber gibt es das Tool libldm ldmtool , mit dem das LDM abgefragt und Voumes über den Geräte-Mapper dargestellt werden können . Das könnte auch für Sie eine Option sein.
Bearbeiten:
Lassen Sie mich versuchen zu klären. Ich schlage nicht vor, dass Sie Linux-Software-RAID aufgeben. Ihr Problem ist nicht mit RAID - es ist mit dem Lesen der Partitionstabelle. Was Sie für RAID tun, ist orthogonal zu diesem Problem.
Ihr Kernel zeigt Ihnen eine Partitionstabelle im MBR-Stil auf diesen Datenträgern an. Sie sehen dies unter Linux, weil Windows sie "dynamisch" gemacht und diese Partitionstabelle als Kompatibilitätsfunktion für Betriebssysteme gespeichert hat, die Partitionstabellen im MBR-Stil lesen können. Auf diesen Festplatten ist freier Speicherplatz vorhanden, aber Ihr Linux-Betriebssystem muss die LDM-Datenbank interpretieren, um auf diesen freien Speicherplatz zugreifen zu können.
Sie können kein gespiegeltes Volume in Windows haben, ohne dynamische Datenträger (LDM-Partitionen) zum Hosten des gespiegelten Volumes zu verwenden. Du steckst fest. Wenn Sie Windows RAID-1 verwenden möchten , müssen diese Datenträger über Partitionen im LDM-Stil verfügen.
Daher müssen Sie zum Adressieren von Volumes auf einer dynamischen Festplatte unter Linux eine LDM-Kompatibilitätsebene verwenden. Wenn Sie keine dynamische Festplatte verwenden, erhalten Sie unter Windows kein Software-RAID.
Mir ist nicht klar, was mit der Kernel-LDM-Unterstützung in Linux passiert ist. Der Code scheint vor Jahren hinzugefügt worden zu sein und sollte stabil sein. Ich nehme an, Sie müssen einen benutzerdefinierten Kernel erstellen. Überprüfen Sie die
grep "CONFIG_LDM_PARTITION" /boot/config-$(uname -r)
Kernelkonfiguration ( ), um festzustellen, ob "CONFIG_LDM_PARTITION" festgelegt ist.Sobald Linux die LDM-Partitionstabelle gelesen hat, können Sie Linux-Software-RAID für Volumes verwenden, die Sie in der LDM-Partitionstabelle erstellt haben. Sie blockieren nur Geräte. Um die Volumes zum Hosten des Linux-Software-RAID zu erstellen, müssen Sie möglicherweise das Windows-
diskpart
Tool (oder möglicherweise das vonldmtool
mir verknüpfte Dienstprogramm) verwenden.quelle
mdmadm --create
. Ich bin nicht sicher, wie ich den "Partitionstyp" ändern soll. Ich werde hier Erfolg / Misserfolg als zukünftige Referenz melden.diskpart
Befehl lautetcreate volume simple
. Das Windows-Datenträgerverwaltungsprogramm sollte ein einfaches Volume ohne Dateisystem anzeigen.