Forum: PC-Programmierung LVM: vgchange vor einem luksClose ausführen?


von Drago S. (mratix)


Lesenswert?

Moin zusammen,

ich stehe gerade mit
1
man vgchange
 auf dem Schlauch und blicke nicht mehr durch.

Eine verschlüsselte USB-Disk wird für ein Backup ein- und ausgehängt.
Der Kollege nimmt sich das Teil, stöpselt es an, es rattert durch, 
stöpselt es ab und geht zur nächsten Maschine.

Im script habe ich folgenden Ablauf
1
luksOpen, pvscan, vgscan, lvscan, vgchange -a y,
2
mount LVs, rsync, umount LVs,
3
(gesuchter Part), luksClose

gesuchter Part: vgchange -a n wäre falsch, da er alle LVs deaktivieren 
würde. --partial oder --uuid oder TAG oder xx Name wäre wohl das 
passende?

Am liebsten etwas in einem Rutsch - die betreffende "VG name" bzw. das 
"PV device" zu deaktivieren und die Disk abstöpselfertig zu bekommen.
Die VG der laufenden Maschine, mit deren LVs, muss natürlich ohne Fehler 
weiter laufen. Möglichst ohne böse Drohungen in der syslog.

Ähm, wat muss ich da für (gesuchter Part) tippen? :)
Danke euch im voraus.

: Bearbeitet durch User
von zonk (Gast)


Lesenswert?

Poste doch mal dein Zauberscript dann musst Du hier nicht in Prosa 
erklären was Du vorhast.
Wer nehmen will muss auch geben

von Drago S. (mratix)


Lesenswert?

zonk schrieb:
> Wer nehmen will muss auch geben
Das script ist interna. Herausgeben geht nicht.

Die Frage ist eindeutig: vgchange vor einem luksClose ausführen? Mit 
welchen Parameter?

Wenn du das nicht verstehst - hol dir ne Tüte Popcorn.
Danke!

von Εrnst B. (ernst)


Lesenswert?

d.h. dein luks-Device ist das LVM-PV? Dann erst die VG darauf 
deaktivieren, vor dem luksClose.

Wenn die PV unverschlüsselt ist, und du luks auf einzelne LVs in der VG 
anwendest, dann natürlich andersherum.

von Jim M. (turboj)


Lesenswert?

Wieso brauchst Du überhaupt LVM auf dem verschlüsselten USB Teil?

Ich hätte da einfach direkt ein Filesystem mit einem passenden Label 
erstellt. Fürs Backup ist ja offenbar rsync zuständig.

Ansonsten "vgchange -a n VGNAME". Ich gehe davon aus das das USB Teil 
einen passenden und nicht anderswo im System verwendeten VG Namen hat.

von Drago S. (mratix)


Lesenswert?

Εrnst B. schrieb:
> Dann erst die VG darauf
> deaktivieren

Jim M. schrieb:
> nsonsten "vgchange -a n VGNAME"
Genau, hab wieder mal zu kompliziert gedacht :) Er nimmt als Arg alles, 
was vorhanden ist. Egal ob es ein LV Name, VG Name oder sonstwas im LVM 
ist.

Nach ein wenig Tüftelei und paar Tests, sieht das ganze ausgedünnt so 
aus:
1
cryptsetup luksOpen /dev/sdc5 sdc5-crypt
2
#pvscan # re-scan pv
3
vgscan --mknodes
4
#lvscan --cache # send metadata to lvmetad
5
vgchange -a y hdd1000 # activate vg
6
# :mount the lv
7
# :do rsync action
8
# :unmount the lv
9
vgchange -a n hdd1000 # de-activate vg
10
cryptsetup luksClose sdc5-crypt
Die nun auskommentierten Zeilen kann man sich sparen.

Und schon bin ich das hier los:
"Stopping remaining crypt disks...sdca5_crypt(busy)
stopping early crypto disks failed.

[ ok ] Unmounting local filesystems ... done
* ERROR: cryptdisks failed to stop
* ERROR: cryptdisks-early failed to stop"

von Drago S. (mratix)


Lesenswert?

Jim M. schrieb:
> Wieso brauchst Du überhaupt LVM auf dem verschlüsselten USB Teil?
Das hat betriebliche und historische Gründe.
Angedacht war es mal dynamisch zu funktionieren. In der Praxis ist eher 
auf Wachstum ausgerichtet. Für Snapshots von LVs brauche ich nun mal 
LVM.

Aus diesem bescheuerten Konstrukt hat sich mittlerweile was vernünftiges 
entwickelt. Die VG ist in Wirklichkeit ein aufgesplitterter Verbund von 
VGs.
Wenn alle Backup-Disks am Archivierungsroboter ankommen, werden sie sehr 
einfach abgetankt und dauerarchiviert.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.