如何从 Docker 容器获取主机的 udev 事件?

ich*_*lau 4 events udev docker

在 Docker 容器中,我正在寻找一种在主机上获取 udev 事件的方法。
使用udevadm monitor,它仅在容器中发回主机的内核事件。

问题是是否有办法检测主机的 udev 事件或将主机的事件转发到容器?

gru*_*nge 8

这就是我让我的容器通过 udev 接收主机事件的方式:

docker run --net=host -v /run/udev/control:/run/udev/control
Run Code Online (Sandbox Code Playgroud)

--net=host 允许容器和主机通过 PF_NETLINK 套接字进行操作,udev 监视器使用它来接收内核事件(在这里找到)

/run/udev/control 是一个文件,udev 监视器用它来检查 udevd 是否已经在运行。如果它不存在,则禁用监视。