
Ich habe derzeit einige benutzerdefinierte Udev-Regeln zum Aktivieren von LVM-Volumes, wenn RAID-Volumes verfügbar werden, die wie folgt aussehen:
KERNEL=="md0", RUN+="/sbin/pvscan --cache -aay"
KERNEL=="md1", RUN+="/sbin/pvscan --cache -aay"
Ist es möglich, etwas Ähnliches zu tun, um die LVM-Volumes an einem festen Einhängepunkt einzuhängen, wenn sie verfügbar werden? Ich gehe davon aus, dass ich ein Device-Mapper-Ereignis abgleichen muss, kann aber keine Dokumentation dazu finden, also frage ich mich, ob das überhaupt möglich ist.
Bitte stellen Sie auf die eine oder andere Weise Links zur Dokumentation bereit.
Antwort1
Sie haben Ihre Verteilung nicht erwähnt, deshalb werde ich es so allgemein wie möglich halten.
Lassen Sie mich zunächst aus der Dokumentation zitieren,udisk2 API-Dokumente(udisk2 api MDRaid):
Die Eigenschaft „Id“
ID lesbar s
Eine eindeutige und dauerhafte Kennung für das Gerät oder leer, wenn keine solche Kennung verfügbar ist.
Bei Geräten mit festem Datenträger wird diese Kennung aus den wesentlichen Produktdaten/UUIDs/Seriennummern des Laufwerks oder Konstrukts (z. B. LVM oder MD-RAID) abgeleitet, zu dem das Blockgerät gehört. Bei Geräten mit Wechseldatenträger wird diese Kennung aus dem aktuell eingelegten Datenträger abgeleitet.
Dieser Bezeichner enthält garantiert nicht den Schrägstrich „/“ (U+002F SOLIDUS), was bedeutet, dass er als Dateiname verwendet werden kann.
Beispiele: „by-id-ata-INTEL_SSDSA2MH080G1GC_CVEM842101HD080DGN“, „by-id-ata-ST1000LM024_HN-M101MBB_S2TBJA0C230233-part3“, „by-id-usb-Kingston_DataTraveler_2.0_0013729940C4F9A166250D3E-0:0“, „by-id-dm-name-luks-6d81fe85-26b1-4f8b-b834-405454c1cd46“, „by-id-dm-name-vg_thinkpad-lv_swap“, „by-label-HARRY_POTTER_SORCERERS_STONE-“, „by-uuid-D22D-08B8“.
Seit 2.0.0
Zuerst müssen Sie alle IDs zum Laufen bringen:udevadm info /dev/sr0 | grep ID
Ein Beispiel für eine solche Einbindung: /etc/udev/rules.d/99-mount_raid.rules
# to create mount-points and mount devices
KERNEL=="md0", ENV{ID}=="by-id-dm-name-luks-6d81fe85-26b1-4f8b-b834-405454c1cd46", ACTION=="add", ENV{mount_options}="relatime", RUN+="/bin/mkdir -p /media/md0_raid", RUN+="/bin/mount -o $env{mount_options} /dev/%k /media/md0_raid"
Hinweis: %k
- Der "Kernelname" für das Gerät mehr unterudev man
Für udev & udisk2 habe ich verwendetudev arch linux wiki
Ich habe derzeit keinen Zugriff auf eine RAID-DEV-Umgebung, daher schreibe ich es aus dem Kopf und mithilfe von Links. Probieren Sie es also bitte aus und lassen Sie mich wissen, ob es für Sie funktioniert.