mirror of
git://sourceware.org/git/lvm2.git
synced 2024-12-21 13:34:40 +03:00
94f77a4d8d
Follow-up fore10f67e917
. The commite10f67e917
tries to keep device node symlinks even if the device is in the suspended state. However, necessary properties that may previously obtained by the blkid command were not imported at least in the .rules file. So, unless ID_FS_xyz properties are imported by another earlier .rules file, the device node symlinks are still lost when event is processed in the suspended state. Let's explicitly import the necessary properties. RHBZ: https://bugzilla.redhat.com/show_bug.cgi?id=2158628 GHPR: https://github.com/lvmteam/lvm2/pull/105
57 lines
2.2 KiB
Plaintext
57 lines
2.2 KiB
Plaintext
# Copyright (C) 2009 Red Hat, Inc. All rights reserved.
|
|
#
|
|
# This file is part of LVM2.
|
|
|
|
# Udev rules for device-mapper devices.
|
|
#
|
|
# These rules create symlinks in /dev/disk directory.
|
|
# Symlinks that depend on probing filesystem type,
|
|
# label and uuid are created only if the device is not
|
|
# suspended.
|
|
|
|
# "add" event is processed on coldplug only!
|
|
ACTION!="add|change", GOTO="dm_end"
|
|
ENV{DM_UDEV_RULES_VSN}!="?*", GOTO="dm_end"
|
|
ENV{DM_UDEV_DISABLE_DISK_RULES_FLAG}=="1", GOTO="dm_end"
|
|
|
|
SYMLINK+="disk/by-id/dm-name-$env{DM_NAME}"
|
|
ENV{DM_UUID}=="?*", SYMLINK+="disk/by-id/dm-uuid-$env{DM_UUID}"
|
|
|
|
ENV{DM_SUSPENDED}=="1", ENV{DM_UDEV_PRIMARY_SOURCE_FLAG}=="1", GOTO="dm_import"
|
|
ENV{DM_NOSCAN}=="1", ENV{DM_UDEV_PRIMARY_SOURCE_FLAG}=="1", GOTO="dm_import"
|
|
ENV{DM_SUSPENDED}=="1", GOTO="dm_end"
|
|
ENV{DM_NOSCAN}=="1", GOTO="dm_watch"
|
|
|
|
(BLKID_RULE)
|
|
GOTO="dm_link"
|
|
|
|
LABEL="dm_import"
|
|
IMPORT{db}="ID_FS_USAGE"
|
|
IMPORT{db}="ID_FS_UUID_ENC"
|
|
IMPORT{db}="ID_FS_LABEL_ENC"
|
|
IMPORT{db}="ID_PART_ENTRY_NAME"
|
|
IMPORT{db}="ID_PART_ENTRY_UUID"
|
|
IMPORT{db}="ID_PART_ENTRY_SCHEME"
|
|
IMPORT{db}="ID_PART_GPT_AUTO_ROOT"
|
|
|
|
LABEL="dm_link"
|
|
ENV{DM_UDEV_LOW_PRIORITY_FLAG}=="1", OPTIONS="link_priority=-100"
|
|
ENV{ID_FS_USAGE}=="filesystem|other|crypto", ENV{ID_FS_UUID_ENC}=="?*", SYMLINK+="disk/by-uuid/$env{ID_FS_UUID_ENC}"
|
|
ENV{ID_FS_USAGE}=="filesystem|other", ENV{ID_FS_LABEL_ENC}=="?*", SYMLINK+="disk/by-label/$env{ID_FS_LABEL_ENC}"
|
|
ENV{ID_PART_ENTRY_UUID}=="?*", SYMLINK+="disk/by-partuuid/$env{ID_PART_ENTRY_UUID}"
|
|
ENV{ID_PART_ENTRY_SCHEME}=="gpt", ENV{ID_PART_ENTRY_NAME}=="?*", SYMLINK+="disk/by-partlabel/$env{ID_PART_ENTRY_NAME}"
|
|
ENV{ID_PART_ENTRY_SCHEME}=="gpt", ENV{ID_PART_GPT_AUTO_ROOT}=="1", SYMLINK+="gpt-auto-root"
|
|
|
|
# Add inotify watch to track changes on this device.
|
|
# Using the watch rule is not optimal - it generates a lot of spurious
|
|
# and useless events whenever the device opened for read-write is closed.
|
|
# The best would be to generete the event directly in the tool changing
|
|
# relevant information so only relevant events will be processed
|
|
# (like creating a filesystem, changing filesystem label etc.).
|
|
#
|
|
# But let's use this until we have something better...
|
|
LABEL="dm_watch"
|
|
OPTIONS+="watch"
|
|
|
|
LABEL="dm_end"
|