使用OpenEuler的docker镜像,安装lvm后,无法创建lv卷

最近在做一个lvm的csi项目,使用OpenEuler的Docker镜像作为Base image,安装了lvm。然后用该镜像创建docker容器,同时映射了宿主机的/dev到容器的/dev中,并且给予了privileged权限。
报错如下:

# lvcreate -y -L 4M lvmvg  -n test1
  /dev/lvmvg/test1: not found: device not cleared
  Aborting. Failed to wipe start of new LV.

我在lvcreate命令中,加入-vvv,查看更多日志。有一些对应的报错:

Udev is not running. Not using udev synchronisation code.

基于这个报错,我有两种方法都可以来修改这个错误:
一:在容器中先启动udev服务;
二:在容器的/etc/lvm/lvm.conf中,将udev的两个参数都设置为0。

udev_sync = 0
udev_rules = 0

这两种方法,都可以成功创建lv卷,但是我担心会有其他潜在的风险。第一种方法,相当于容器和宿主机都运行了udev,不知道是否会有风险;第二种方法,就是lvm不通过udev来创建lv卷,也不确定是否有风险。

鉴于此,我使用了Alpine来作为base image,它没有运行udev命令,并且udev_sync 和udev_rules 也是设置为1,但lvcreate命令却可以成功创建lv卷

所以,想咨询下,在OpenEulerdocker镜像中,是否有不手动运行udev,并且不设置udev_sync 和udev_rules 为0后,依然还可以成功创建lv卷的方法?

问题已经解决,因为Alpine镜像中的lvm命令,编译时,已经disable了udev_sync,即使lvm.conf中配置了udev_sync为1,也不会使用udev服务。因此就不会报错了。