Bestehendes RAID + LVM im Betrieb verschlüsseln?
- jph
- Beiträge: 1049
- Registriert: 06.12.2015 15:06:07
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Greven/Westf.
Re: Bestehendes RAID + LVM im Betrieb verschlüsseln?
Ich bin auch bei der Arbeit... Keine Hektik... [emoji23]
-
- Beiträge: 2427
- Registriert: 06.12.2005 10:38:46
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Baustelle
Re: Bestehendes RAID + LVM im Betrieb verschlüsseln?
so da haben wir also die korrekten Werte:
alte boot-Partition (erste Part) sieht so aus:
neue (noch nicht) boot Partition (erste Part):
Die Frage ist jetzt also, wie muss die 1.Part korrekt konfiguriert werden, damit sowohl grub im MBR landet, als auch das RAID (sdc1/sdd1) erkannt wird?
EDIT:
laut diesem Beitrag: http://serverfault.com/questions/320697 ... tion-types ist bios_grubwohldie richtigeOption,wie ich es verstehe.
So bin ich vorgegangen:
cryptsetup open --type luks /dev/md128 cryptroot
/dev/mapper/cryproot als /new/ gemounted
md127 als /new/boot gemounted
mount -o bind /sys /new/sys
mount -o bind /proc /new/proc
mount -o bind /dev /new/dev
chroot /new /bin/bash #sysrescuenutzt die zsh, die auf dem Zielsystem nicht installiert ist
Danach halt grub installiert (einmal ohne Meldung,einmal mit Fehler).Bootenkonnte aber keine der Platten.
Einzige Idee die ich momentan habe: /boot hat metadata v0.9 und auf dem alten System war es v1.2. Ich könnte natürlich das RAID der boot-Partition jetzt nochmal mit v 1.2neu aufsetzen,ist ja klein und damit schnell gemacht..
EDIT2:
initramfs hat ja seine eigene Kopie von mdadm.conf. Aber: holt sich initramfs die von /etc/mdadm/mdadm.conf oder legt es die selbst an?
In ersterem Fall scheint mir die aufegelesene version immernoch strange:
wie kommen diese Unterschiede zustande? md129 md/128 md/127_0?
In zweiterem:Sollte ich dann das System ohne die alten RAID Verbünde starten?
alte boot-Partition (erste Part) sieht so aus:
Code: Alles auswählen
Model: ATA Hitachi HTE54322 (scsi)
Disk /dev/sda: 250GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags:
Number Start End Size Type File system Flags
1 1049kB 500MB 499MB primary boot, raid
2 500MB 57.5GB 57.0GB primary raid
3 57.5GB 60.5GB 3000MB primary linux-swap(v1)
4 60.5GB 245GB 185GB primary raid
Code: Alles auswählen
Model: ATA WDC WD30EFRX-68E (scsi)
Disk /dev/sdc: 3001GB
Sector size (logical/physical): 512B/4096B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
1 1049kB 524MB 523MB ext2 1 bios_grub
2 524MB 4744MB 4219MB 2
3 4744MB 75.2GB 70.4GB 3 raid
4 75.2GB 3001GB 2925GB 4 raid
EDIT:
laut diesem Beitrag: http://serverfault.com/questions/320697 ... tion-types ist bios_grubwohldie richtigeOption,wie ich es verstehe.
So bin ich vorgegangen:
cryptsetup open --type luks /dev/md128 cryptroot
/dev/mapper/cryproot als /new/ gemounted
md127 als /new/boot gemounted
mount -o bind /sys /new/sys
mount -o bind /proc /new/proc
mount -o bind /dev /new/dev
chroot /new /bin/bash #sysrescuenutzt die zsh, die auf dem Zielsystem nicht installiert ist
Danach halt grub installiert (einmal ohne Meldung,einmal mit Fehler).Bootenkonnte aber keine der Platten.
Einzige Idee die ich momentan habe: /boot hat metadata v0.9 und auf dem alten System war es v1.2. Ich könnte natürlich das RAID der boot-Partition jetzt nochmal mit v 1.2neu aufsetzen,ist ja klein und damit schnell gemacht..
EDIT2:
initramfs hat ja seine eigene Kopie von mdadm.conf. Aber: holt sich initramfs die von /etc/mdadm/mdadm.conf oder legt es die selbst an?
In ersterem Fall scheint mir die aufegelesene version immernoch strange:
Code: Alles auswählen
ARRAY /dev/md/127_0 metadata=0.90 UUID=3de7d48a:7c67c842:c44c77eb:7ee19756
ARRAY /dev/md/128 metadata=1.2 name=sysresccd:128 UUID=883b5984:310045c3:94bb2809:4d46bc9e
ARRAY /dev/md129 metadata=1.2 name=sysresccd:129 UUID=b360b8e5:b30a047e:dd887155:2a75262f
In zweiterem:Sollte ich dann das System ohne die alten RAID Verbünde starten?
-
- Beiträge: 2427
- Registriert: 06.12.2005 10:38:46
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Baustelle
Re: Bestehendes RAID + LVM im Betrieb verschlüsseln?
Hier scheint es noch ein paar Hinweise auf zu korrigierende confs zu geben:
http://unix.stackexchange.com/questions ... otup#71209
innerhalb von chroot:
/boot/grub/devicemap
/etc/default/grub
dann nochmalinitramfs neu bauen und grub installieren/ updaten ist die kurzversion.
Mal schauen
EDIT:
Mist: das hat gestern definitiv noch funktioniert:
und der Parttable von md127 sieht auch merkwürdig aus:
http://unix.stackexchange.com/questions ... otup#71209
innerhalb von chroot:
/boot/grub/devicemap
/etc/default/grub
dann nochmalinitramfs neu bauen und grub installieren/ updaten ist die kurzversion.
Mal schauen
EDIT:
Mist: das hat gestern definitiv noch funktioniert:
Code: Alles auswählen
% mount /dev/md127 /new/boot
mount: wrong fs type, bad option, bad superblock on /dev/md127,
missing codepage or helper program, or other error
In some cases useful info is found in syslog - try
dmesg | tail or so.
Code: Alles auswählen
Model: Linux Software RAID Array (md)
Disk /dev/md127: 523MB
Sector size (logical/physical): 512B/4096B
Partition Table: loop
Disk Flags:
Number Start End Size File system Flags
1 0.00B 523MB 523MB ext2
-
- Beiträge: 507
- Registriert: 30.12.2016 23:48:51
Re: Bestehendes RAID + LVM im Betrieb verschlüsseln?
Ich kann beim besten Willen nicht verstehen, wie man so etwas auch nur in Erwägung ziehen kann. In der ganzen Zeit nun seit in diesem Thread das Problem durchgekaut wird, hätte man das ganze System locker x-mal neu aufsetzen und die Daten entsprechend zurück spielen können. Eigentlich müsste doch inzwischen klar sein wie kompliziert das ist. Aber muss jeder selbst wissen.mclien hat geschrieben:Momentan sieht das Datenerzeichnis auf mein Server so aus:
RAID1 (sda3 und sdb3) + RAID1 (sdc1 und sdd1) -> LVM -> /daten
nun würde ich das ganze gerne Verschlüsseln ohne alles neu aufsetzten zu müssen.
- jph
- Beiträge: 1049
- Registriert: 06.12.2015 15:06:07
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Greven/Westf.
Re: Bestehendes RAID + LVM im Betrieb verschlüsseln?
Und ich kann beim besten Willen nicht verstehen, wie man einen Thread nicht vollständig lesen kann, bevor man seinen Senf dazugibt.
-
- Beiträge: 2427
- Registriert: 06.12.2005 10:38:46
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Baustelle
Re: Bestehendes RAID + LVM im Betrieb verschlüsseln?
So habe mein Wissen zu gpt Part tables ein wenig erweitert.
So wie ich es verstehe, kennt gpt keinen MBR. Die Bedeutet, dass gpt eine ZUSÄTZLICHE Partition dafür braucht, die dann das flag bios_grub haben muss.
Also statt:
muss ich den wohlso aufbauen:
Die Frage ist nun, ob ich die bios_grub partition noch or die /boot RAID Partition bauen kann. Was möglicherweis eklappt,da ich die 1.Part ja erst bei 1049KB angefangen habe.
Ansonsten muss ich wohl die 1.Part nochmal neu bauen. Ausserdme stellt sich die Frage, ob ich "0" als nummer vergeben darf, wobei das nicht weiter relevant sein dürfte solange bios_grub am Anfang der Platte steht.
EDIT:
funktioniert ungefähroder zumindest besser (die Part number "0" gibts natürlich nicht,ist dei "5" geworden).
- md127 nochmal mit neuem file system bestückt
- per chroot initramfs neu
- grub install
Zumindest läd Grub jetzt schonma,findet allerdings die /boot Platte nicht (keine disc zur UUID)
checke jetzt nochmal configs.
EDIT2:
OK, die UUID,die Grub laden will ist die alte ID der /boot RAID PArtition.
Irgendetwas in Grub muss wohlnoch korrigiert werden...
So wie ich es verstehe, kennt gpt keinen MBR. Die Bedeutet, dass gpt eine ZUSÄTZLICHE Partition dafür braucht, die dann das flag bios_grub haben muss.
Also statt:
Code: Alles auswählen
number Start End Size File system Name Flags
1 1049kB 524MB 523MB ext2 1 bios_grub
2 524MB 4744MB 4219MB 2
3 4744MB 75.2GB 70.4GB 3 raid
4 75.2GB 3001GB 2925GB 4 raid
Code: Alles auswählen
number Start End Size File system Name Flags
0 0kB 1048kB 1MB ext2 0 bios_grub # neue part
1 1049kB 524MB 523MB ext2 1 raid # das müsste das RAID wieder lesbar machen
2 524MB 4744MB 4219MB 2
3 4744MB 75.2GB 70.4GB 3 raid
4 75.2GB 3001GB 2925GB 4 raid
Ansonsten muss ich wohl die 1.Part nochmal neu bauen. Ausserdme stellt sich die Frage, ob ich "0" als nummer vergeben darf, wobei das nicht weiter relevant sein dürfte solange bios_grub am Anfang der Platte steht.
EDIT:
funktioniert ungefähroder zumindest besser (die Part number "0" gibts natürlich nicht,ist dei "5" geworden).
- md127 nochmal mit neuem file system bestückt
- per chroot initramfs neu
- grub install
Zumindest läd Grub jetzt schonma,findet allerdings die /boot Platte nicht (keine disc zur UUID)
checke jetzt nochmal configs.
EDIT2:
OK, die UUID,die Grub laden will ist die alte ID der /boot RAID PArtition.
Irgendetwas in Grub muss wohlnoch korrigiert werden...
-
- Beiträge: 2427
- Registriert: 06.12.2005 10:38:46
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Baustelle
Re: Bestehendes RAID + LVM im Betrieb verschlüsseln?
Weitest gehend abschließende Melldungen:
/etc/fstab und
/etc/cryptab
korrekt editierenud alles läuft wieder. Diesmal auf einem verschlüsseltem RAID 1.
Momentan muss ich halt beim boot 2x eine Passphrase eingeben (cryptroot und cryptdata).Ob ich mir die Mühe mache cryptdata noch auf keyfile umzubauen, weiß ich noch nicht. Kommt drauf an wie oft ich die Kiste booten muß..
/etc/fstab und
/etc/cryptab
korrekt editierenud alles läuft wieder. Diesmal auf einem verschlüsseltem RAID 1.
Momentan muss ich halt beim boot 2x eine Passphrase eingeben (cryptroot und cryptdata).Ob ich mir die Mühe mache cryptdata noch auf keyfile umzubauen, weiß ich noch nicht. Kommt drauf an wie oft ich die Kiste booten muß..
- jph
- Beiträge: 1049
- Registriert: 06.12.2015 15:06:07
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Greven/Westf.
Re: Bestehendes RAID + LVM im Betrieb verschlüsseln?
Sehr schön. Was war denn letztendlich falsch bzw. was hast du noch geändert, um die Sache zum Laufen zu bringen?
Noch ein Tipp: leg doch für die verschlüsselten Daten eine systemd-mount-unit an, die das während des Starts entschlüsselt und mountet. Wenn diese Unit auf verschlüsseltem / liegt, kannst du da ja das Passwort reinschreiben.
(Schmuck am Nachthemd: Debian bildet die Namen der entschlüsselten Devices aus dem Namen des verschlüsselten Device mit angehängtem _crypt. Dadurch kann man die Geräte einfach einander zuordnen. Auf dem Laptop, auf dem ich gerade tippe, gehört sda3_crypt zu sda3.)
Noch ein Tipp: leg doch für die verschlüsselten Daten eine systemd-mount-unit an, die das während des Starts entschlüsselt und mountet. Wenn diese Unit auf verschlüsseltem / liegt, kannst du da ja das Passwort reinschreiben.
(Schmuck am Nachthemd: Debian bildet die Namen der entschlüsselten Devices aus dem Namen des verschlüsselten Device mit angehängtem _crypt. Dadurch kann man die Geräte einfach einander zuordnen. Auf dem Laptop, auf dem ich gerade tippe, gehört sda3_crypt zu sda3.)
-
- Beiträge: 2427
- Registriert: 06.12.2005 10:38:46
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: Baustelle
Re: Bestehendes RAID + LVM im Betrieb verschlüsseln?
Der wesentlich fail, war halt die zusätzlcihe Part. die gpt braucht. Durch den missglückten Install auf die /boot Part war die jetzt geschrottet.
Also nochmal das RAID md127 für bootmit neuem Dateisystem bestückt
die daten vom alten /boot aufs neue /boot gesynct
chroot und dann
- grub-install
- update-grub
Und offenbar hatte ich in der /etc/fstab nur die überflüssigen Dinge auskommentiert, aber die UUID für boot noch nicht mit der neuen Ausgetauscht.
Danach ohne Probleme gebootet und dann noch die /daten Part eingehängt (fstab und crypttab).
Bin am überlegen, ob ein WIKI EIntrag für das ganze lohnt...
Oh und Danke für Deinen "Beistand"
Also nochmal das RAID md127 für bootmit neuem Dateisystem bestückt
die daten vom alten /boot aufs neue /boot gesynct
chroot und dann
- grub-install
- update-grub
Und offenbar hatte ich in der /etc/fstab nur die überflüssigen Dinge auskommentiert, aber die UUID für boot noch nicht mit der neuen Ausgetauscht.
Danach ohne Probleme gebootet und dann noch die /daten Part eingehängt (fstab und crypttab).
Bin am überlegen, ob ein WIKI EIntrag für das ganze lohnt...
Oh und Danke für Deinen "Beistand"