4.6. 用过滤器控制 LVM 设备扫描
在启动时会运行
vgscan
命令来扫描系统中的块设备以查找 LVM 标签来确定哪些是物理卷,并读取元数据建立卷组列表。物理卷的名称被保存在系统每个节点的缓冲文件中,即 /etc/lvm/.cache
。之后运行的命令可以读取该文件以避免重复扫描。
您可以在
lvm.conf
配置文件中通过设置过滤器来控制 LVM 要扫描的设备。过滤器由一组简单正则表达式组成,使用 /dev
目录中的设备名称来确定接受还是拒绝找到的块设备。
下面的例子显示用过滤器控制 LVM 要扫描设备的方法。请注意:有些例子不一定是最好的实践方法,因为正则表达式根据完整路径名称自由匹配。例如:
a/.*loop.*/
和 a/loop/
及 /dev/solooperation/lvol1
都对映。
下面的过滤器添加所有找到的设备,这是配置文件中没有配置过滤器的默认行为:
filter = [ "a/.*/" ]
下面的过滤器会删除光驱以避免在驱动器中没有介质时造成延迟:
filter = [ "r|/dev/cdrom|" ]
下面的过滤器添加所有回路设备并删除其它块设备:
filter = [ "a/loop.*/", "r/.*/" ]
下面的过滤器添加所有回路设备和 IDE 设备,同时删除所有其它块设备:
filter =[ "a|loop.*|", "a|/dev/hd.*|", "r|.*|" ]
下面的过滤器只添加第一个 IDE 驱动器中的分区 8,同时删除所有其它块设备:
filter = [ "a|^/dev/hda8$|", "r/.*/" ]
For more information on the
lvm.conf
file, see 附录 B, LVM 配置文件 and the lvm.conf
(5) man page.