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


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Mister A. (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 Mister A. (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 Mister A. (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 Mister A. (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.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.