一些“消失”的dm-? /dev目录下的文件

一些“消失”的dm-? /dev目录下的文件

最近,我接管了一些使用本机 DM-multipath 运行的 RHEL 系统,这些系统是由其他人安装和配置的。
我的疑惑主要集中在以下几个问题:
1).为什么只有一部分dm-? /dev 目录下 dm10~19 的文件?
2)。为什么所有的mapper文件没有指向它们对应的dm-?哪些文件应该是符号链接?
注意:但是所有完整的dm-?在系统内核中还是可以从/proc/partitions中看到。尽管存在这些症状,但使用本机 DM 多路径运行的所有系统都可以正常工作。

# 
# 
# ls -ltr /dev/mapper
total 0
crw------- 1 root root  10, 60 Jun 22  2021 control
brw-rw---- 1 root disk 253,  9 Jun 22  2021 vgroot-Lvswap
brw-rw---- 1 root disk 253, 10 Jun 22  2021 3600c0ff0001582e1dc40b45101000000
brw-rw---- 1 root disk 253, 17 Jun 22  2021 3600c0ff0001582e1bdaa115201000000
brw-rw---- 1 root disk 253, 13 Jun 22  2021 3600c0ff0001582e1bc43b45101000000
brw-rw---- 1 root disk 253, 16 Jun 22  2021 3600c0ff0001582e189aa115201000000
brw-rw---- 1 root disk 253, 12 Jun 22  2021 3600c0ff0001582e16641b45101000000
brw-rw---- 1 root disk 253, 15 Jun 22  2021 3600c0ff0001582e15bceba5101000000
brw-rw---- 1 root disk 253, 14 Jun 22  2021 3600c0ff0001582e13bceba5101000000
brw-rw---- 1 root disk 253, 11 Jun 22  2021 3600c0ff0001582e11141b45101000000
brw-rw---- 1 root disk 253, 18 Jun 22  2021 3600c0ff0001581c1ca81625501000000
brw-rw---- 1 root disk 253, 19 Jun 22  2021 3600c0ff0001581c1895b895901000000
brw-rw---- 1 root disk 253, 20 Jun 22  2021 vgoms-lvoms
brw-rw---- 1 root disk 253, 21 Jun 22  2021 vghes-lvhes
brw-rw---- 1 root disk 253, 22 Jun 22  2021 vgdata-lvoadata
brw-rw---- 1 root disk 253, 24 Jun 22  2021 vgdata-lvhnweb
brw-rw---- 1 root disk 253, 23 Jun 22  2021 vgdata-lvdocdata
brw-rw---- 1 root disk 253,  0 Jun 22  2021 vgroot-Lvroot
brw-rw---- 1 root disk 253,  1 Jun 22  2021 vgroot-Lvhome
brw-rw---- 1 root disk 253,  2 Jun 22  2021 vgroot-Lvvar
brw-rw---- 1 root disk 253,  3 Jun 22  2021 vgroot-Lvtmp
brw-rw---- 1 root disk 253,  4 Jun 22  2021 vgroot-Lvinstall
brw-rw---- 1 root disk 253,  5 Jun 22  2021 vgroot-Lvusr
brw-rw---- 1 root disk 253,  6 Jun 22  2021 vgroot-Lvopenv
brw-rw---- 1 root disk 253,  7 Jun 22  2021 vgroot-Lvapp
brw-rw---- 1 root disk 253,  8 Jun 22  2021 vgroot-Lvoracle
brw-rw---- 1 root disk 253, 25 Nov 23 17:24 vgqdisk-lvqdisk
# 
# 
# 
# ls -l /dev/dm-*
brw-rw---- 1 root root 253, 10 Jun 22  2021 /dev/dm-10
brw-rw---- 1 root root 253, 11 Jun 22  2021 /dev/dm-11
brw-rw---- 1 root root 253, 12 Jun 22  2021 /dev/dm-12
brw-rw---- 1 root root 253, 13 Jun 22  2021 /dev/dm-13
brw-rw---- 1 root root 253, 14 Jun 22  2021 /dev/dm-14
brw-rw---- 1 root root 253, 15 Jun 22  2021 /dev/dm-15
brw-rw---- 1 root root 253, 16 Jun 22  2021 /dev/dm-16
brw-rw---- 1 root root 253, 17 Jun 22  2021 /dev/dm-17
brw-rw---- 1 root root 253, 18 Jun 22  2021 /dev/dm-18
brw-rw---- 1 root root 253, 19 Jun 22  2021 /dev/dm-19
# 
# 
# 
# cat /proc/partitions
major minor  #blocks  name

 104     0  292935982 cciss/c0d0
 104     1     104391 cciss/c0d0p1
 104     2  292824787 cciss/c0d0p2
   8     0     976512 sda
   8    16   97656192 sdb
   8    32   97656192 sdc
   8    48   97656192 sdd
   8    64   97656192 sde
   8    80   97656192 sdf
   8    96   97656192 sdg
   8   112   97656192 sdh
   8   128  585937472 sdi
   8   144  989858240 sdj
   8   160     976512 sdk
   8   176   97656192 sdl
   8   192   97656192 sdm
   8   208   97656192 sdn
   8   224   97656192 sdo
   8   240   97656192 sdp
  65     0   97656192 sdq
  65    16   97656192 sdr
  65    32  585937472 sds
  65    48  989858240 sdt
 253     0   10485760 dm-0
 253     1    5242880 dm-1
 253     2    5242880 dm-2
 253     3    5242880 dm-3
 253     4   15728640 dm-4
 253     5   10485760 dm-5
 253     6   20971520 dm-6
 253     7   20971520 dm-7
 253     8   62914560 dm-8
 253     9   16777216 dm-9
 253    10     976512 dm-10
 253    11   97656192 dm-11
 253    12   97656192 dm-12
 253    13   97656192 dm-13
 253    14   97656192 dm-14
 253    15   97656192 dm-15
 253    16   97656192 dm-16
 253    17   97656192 dm-17
 253    18  585937472 dm-18
 253    19  989858240 dm-19
 253    20  989855744 dm-20
 253    21  585105408 dm-21
 253    22  209715200 dm-22
 253    23  209715200 dm-23
 253    24  209715200 dm-24
 253    25     974848 dm-25
# 
# 



# 
# 
# multipath -ll
3600c0ff0001581c1ca81625501000000 dm-18 HP,P2000 G3 FC
[size=559G][features=1 queue_if_no_path][hwhandler=0][rw]
\_ round-robin 0 [prio=50][active]
 \_ 2:0:2:9  sds        65:32 [active][ready]
\_ round-robin 0 [prio=10][enabled]
 \_ 1:0:3:9  sdi        8:128 [active][ready]
3600c0ff0001582e13bceba5101000000 dm-14 HP,P2000 G3 FC
[size=93G][features=1 queue_if_no_path][hwhandler=0][rw]
\_ round-robin 0 [prio=50][active]
 \_ 2:0:2:5  sdo        8:224 [active][ready]
\_ round-robin 0 [prio=10][enabled]
 \_ 1:0:3:5  sde        8:64  [active][ready]
3600c0ff0001582e15bceba5101000000 dm-15 HP,P2000 G3 FC
[size=93G][features=1 queue_if_no_path][hwhandler=0][rw]
\_ round-robin 0 [prio=50][active]
 \_ 2:0:2:6  sdp        8:240 [active][ready]
\_ round-robin 0 [prio=10][enabled]
 \_ 1:0:3:6  sdf        8:80  [active][ready]
3600c0ff0001582e1bc43b45101000000 dm-13 HP,P2000 G3 FC
[size=93G][features=1 queue_if_no_path][hwhandler=0][rw]
\_ round-robin 0 [prio=50][active]
 \_ 2:0:2:3  sdn        8:208 [active][ready]
\_ round-robin 0 [prio=10][enabled]
 \_ 1:0:3:3  sdd        8:48  [active][ready]
3600c0ff0001582e1dc40b45101000000 dm-10 HP,P2000 G3 FC
[size=954M][features=1 queue_if_no_path][hwhandler=0][rw]
\_ round-robin 0 [prio=50][active]
 \_ 2:0:2:0  sdk        8:160 [active][ready]
\_ round-robin 0 [prio=10][enabled]
 \_ 1:0:3:0  sda        8:0   [active][ready]
3600c0ff0001582e11141b45101000000 dm-11 HP,P2000 G3 FC
[size=93G][features=1 queue_if_no_path][hwhandler=0][rw]
\_ round-robin 0 [prio=50][active]
 \_ 2:0:2:1  sdl        8:176 [active][ready]
\_ round-robin 0 [prio=10][enabled]
 \_ 1:0:3:1  sdb        8:16  [active][ready]
3600c0ff0001582e16641b45101000000 dm-12 HP,P2000 G3 FC
[size=93G][features=1 queue_if_no_path][hwhandler=0][rw]
\_ round-robin 0 [prio=50][active]
 \_ 2:0:2:2  sdm        8:192 [active][ready]
\_ round-robin 0 [prio=10][enabled]
 \_ 1:0:3:2  sdc        8:32  [active][ready]
3600c0ff0001581c1895b895901000000 dm-19 HP,P2000 G3 FC
[size=944G][features=1 queue_if_no_path][hwhandler=0][rw]
\_ round-robin 0 [prio=50][active]
 \_ 2:0:2:10 sdt        65:48 [active][ready]
\_ round-robin 0 [prio=10][enabled]
 \_ 1:0:3:10 sdj        8:144 [active][ready]
3600c0ff0001582e1bdaa115201000000 dm-17 HP,P2000 G3 FC
[size=93G][features=1 queue_if_no_path][hwhandler=0][rw]
\_ round-robin 0 [prio=50][active]
 \_ 2:0:2:8  sdr        65:16 [active][ready]
\_ round-robin 0 [prio=10][enabled]
 \_ 1:0:3:8  sdh        8:112 [active][ready]
3600c0ff0001582e189aa115201000000 dm-16 HP,P2000 G3 FC
[size=93G][features=1 queue_if_no_path][hwhandler=0][rw]
\_ round-robin 0 [prio=50][active]
 \_ 2:0:2:7  sdq        65:0  [active][ready]
\_ round-robin 0 [prio=10][enabled]
 \_ 1:0:3:7  sdg        8:96  [active][ready]
#
#
# rpm -Vav|grep /etc/udev/rules.d
........    /etc/udev/rules.d
........  c /etc/udev/rules.d/05-udev-early.rules
........  c /etc/udev/rules.d/50-udev.rules
........  c /etc/udev/rules.d/51-hotplug.rules
........  c /etc/udev/rules.d/90-dm.rules
........  c /etc/udev/rules.d/95-pam-console.rules
........  c /etc/udev/rules.d/61-uinput-stddev.rules
........  c /etc/udev/rules.d/61-uinput-wacom.rules
........    /etc/udev/rules.d/90-hal.rules
........    /etc/udev/rules.d/90-ib.rules
........    /etc/udev/rules.d/90-alsa.rules
........  c /etc/udev/rules.d/60-raw.rules
........    /etc/udev/rules.d/xen-backend.rules
........    /etc/udev/rules.d/40-multipath.rules
........    /etc/udev/rules.d/60-net.rules
........    /etc/udev/rules.d/90-hal.rules
........    /etc/udev/rules.d/60-wacom.rules
........  c /etc/udev/rules.d/98-kexec.rules
........  c /etc/udev/rules.d/85-pcscd_ccid.rules
........    /etc/udev/rules.d/51-dlm.rules
........    /etc/udev/rules.d/60-libsane.rules
........  c /etc/udev/rules.d/bluetooth.rules
........    /etc/udev/rules.d/60-pcmcia.rules
# 
# 
# cat /etc/udev/rules.d/90-dm*
KERNEL=="dm-[0-9]*", ACTION=="add", OPTIONS+="ignore_device"
# 
#

答案1

我真的不知道你的问题 1.) 的答案。但我注意到所有丢失的/dev/dm-*设备节点都与 LVM 设备映射相关。

但对于问题 2.) 在 RHEL 5.x 中,在目录中使用符号链接的做法/dev/mapper尚未实现。该版本中使用的旧版本udev比现代集成版本更宽松systemd

对于该版本来说,将真实设备节点同时作为/dev/mapper/vg*文件和相应的/dev/dm-*文件(而不是/dev/mapper/vg*相应的符号链接)是正常的。/dev/dm-*

dm-multipath 可能也是如此,但我无法确认这一点,因为我唯一剩下的 RHEL 5.x 测试虚拟机未配置多路径。

我还注意到,大多数/dev/mapper/*/dev/dm-*设备节点上的时间戳表明该系统已经连续运行了大约 1.5 年。但/dev/mapper/vgqdisk-lvqdisk日期是 11 月 23 日,因此存储配置的某些部分最近已更改,并且其相应的部分/dev/dm-25也丢失了。

您检查过自定义 udev 规则吗/etc/udev/rules.d/?请注意,RHEL 5.x 有全部它的 udev 规则在那里;RHEL 5.x 中尚不存在分发版标准规则/usr/lib/udev/和系统管理员自定义的分离。/etc/udev/如果前任管理员为其(可能的)自定义规则编写了注释,这些注释可能会解释他们的想法。

要查明是否存在非默认规则,您需要运行以下命令:

sudo rpm -Vav | grep /etc/udev/rules.d

这将输出 RPM 包管理已知的 udev 规则文件列表:如果文件与相应 RPM 包所包含的内容相同,则文件名将以 8 个点为前缀:.........

然后,您需要将此文件列表与目录中实际的文件进行比较/etc/udev/rules.d:如果命令未列出任何文件rpm,则它们将是以前的系统管理员添加的自定义内容,应检查它们是否可能导致设备节点丢失。

/dev/dm-*当然,由于某些命令输入错误,设备可能会丢失,如果系统重新启动,它将/dev/dm-*正常重新创建所有设备。如果您运行sudo lsof +aL1 /dev并发现丢失的设备仍处于打开状态,则可能支持删除是随机系统管理员“哎呀”的理论。

(当接管已经连续运行很长时间的旧系统时,在新管理员承担责任之前,最好要求旧管理员证明系统实际上可以毫无错误地重新启动。这样,任何隐藏的问题都有可能变得可见,并且可以避免各种指责游戏,但我知道实际上并不总是可以安排这样的测试......)

相关内容