Правила udev для устройства отображения при активации томов lvm

В настоящее время у меня есть несколько пользовательских правил udev для активации томов LVM, когда становятся доступными raid-тома, которые выглядят следующим образом:

KERNEL=="md0", RUN+="/sbin/pvscan --cache -aay"
KERNEL=="md1", RUN+="/sbin/pvscan --cache -aay"

возможно ли что-то подобное монтировать в фиксированной точке монтирования для томов LVM, когда они станут доступны. Я предполагаю, что должен соответствовать событию устройства сопоставления, но я не могу найти никакой документации о том, как это сделать, поэтому мне интересно, возможно ли это вообще.

Пожалуйста, предоставьте ссылки на документацию тем или иным способом

1 ответ

Вы не упомянули свой дистрибутив, поэтому я сделаю это как можно более общим.

Сначала позвольте мне процитировать документацию к API- интерфейсу udisk2 ( MDRaid API-интерфейса udisk2):

Свойство "Id"

Id для чтения с

Уникальный и постоянный идентификатор устройства или пустой, если такой идентификатор недоступен.

Для устройств с фиксированным носителем этот идентификатор получен из важных данных продукта / UUID / серийных номеров накопителя или конструкции (например, LVM или MD-RAID), частью которых является блочное устройство. Для устройств со съемными носителями этот идентификатор получен из вставленного носителя.

Этот идентификатор гарантированно не содержит косую черту '/' (U+002F SOLIDUS), что означает, что его можно использовать в качестве имени файла.

Примеры: "by-id-ata-INTEL_SSDSA2MH080G1GC_CVEM842101HD080DGN", "by-id-ata-ST1000LM024_HN-M101MBB_S2TBJA0C230233-part3", "by-id-usb-Kingston_2502D2D0402D2D" 0D0:050D0402D0402: 040:0D0:050:0D0:0D0:050:0D: 0D: 0D: -luks-6d81fe85-26b1-4f8b-b834-405454c1cd46 "," by-id-dm-name-vg_thinkpad-lv_swap "," by-label-HARRY_POTTER_SORCERERS_STONE- "," by-uuid-D22D-08B8 ".

С 2.0.0

Сначала вы должны запустить все ID: udevadm info /dev/sr0 | grep ID

Пример такого монтирования: /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"

нота: %k - "Имя ядра" для устройства больше у udev man

Для udev & udisk2 я использовал udev arch linux wiki

У меня сейчас нет доступа к RAID DEV env, поэтому я пишу его из головы и ссылок, поэтому, пожалуйста, попробуйте и дайте мне знать, работает ли он для вас.

Другие вопросы по тегам