发布时间: 2015-11-15 | 浏览次数: 4343 | 下载次数: 29 | 作者: w90004196 | 文档编号: EKB1000089889
Linux主机设置LVM自动挂载,安装华为多路径( UltraPath)软件后重启系统,系统全部无法启动。 如图:
对比“问题描述”中的截图, 可以看出系统不能正常启动是因为用户设置了LVM自动挂载,而系统重启之后/dev/mapper/datavg01-data1设备无法找到。设置了自动挂载的LVM卷设备无法找到,导致系统进行fs check失败,从而系统无法正常启动。
2.由于系统在未安装多路径之前重启均正常, 所以在进入系统后,卸载多路径,打开/dev/mapper/datavg01-data1自动挂载,系统重启成功,所以初步分析问题与多路径有关。
经过对比干净的系统(RHEL5.8升级内核,2.6.18-308.8.2.el5),LVM默认配置(/etc/LVM/LVM.conf)中没有图1所示信息:
图1 linux默认配置
进一步和客户确认,客户确实对LVM默认配置(/etc/lvm/lvm.conf)做了改动(图2),导致LVM无法扫描出漂移后盘符的卷信息。
图2 客户现场配置
filter配置项是LVM过滤配置项,用来控制LVM的设备扫描范围,从上面的配置可以看出,当本地盘sdb盘符漂移到sdu后,LVM就扫描不到,所以造成在sdb上建立的逻辑卷发现不了,从而导致系统无法启动。为了验证LVM配置对系统的影响,修改filiter选项为系统默认(filter = [ “a/.*/” ]),重启系统,选择多路径镜像进入系统,系统重启成功,所以可以确认对LVM配置的修改缩小了LVM扫描设备的范围,大大增加了系统在发生盘符漂移时找不到LVM逻辑卷的可能。
故障发生的原因可以归结为如下: LVM默认配置被修改导致LVM扫盘范围只能在sda到sde,而多路径做镜像脚本使HBA驱动加载先于本地盘驱动,导致本地盘盘符漂移(sdb变为sdu)。所以在sdb上创建的LVM逻辑卷不能发现,设置了自动挂载的LVM逻辑卷不能发现就会导致系统起来时fs check失败,从而系统不能启动