由udev触发的脚本来检查分区表并testing它是否是一个ceph磁盘

我想触发使用CoreD下的udev磁盘添加/删除脚本。

目的/目标是自动挂载ceph数据分区到一个特定的目录,准备在ceph-docker中启动/停止osd。

1)首先,CoreOS使用systemd。 我应该做一个systemd的方式,或者我只是在/etc/udev/rules.d下创build我的文件? (默认情况下不存在的目录)。

2)可以说,我设法通过udev检测磁盘,并用设备文件名触发一个脚本。 如何读取/ dev / sda并确定它是否是一个ceph磁盘。 即我想检查typecode。 它需要是4fbd7e29-9d25-41b8-afd0-062c0ceff05d

udevsystemd非常紧密地集成在一起,以至于你可能不想用udev创build规则,而是使用systemd mount单元:

http://www.freedesktop.org/software/systemd/man/systemd.mount.html

所有这些选项(包括检查文件系统types)都由systemd支持。

你的ceph.mount文件看起来像这样:

 [Unit] Description=CEPH Partition Before=my-docker-process.service [Mount] What=/dev/disk/by-uuid/59696d6c-2c78-48d0-b844-1c9590cfd0b0 Where=/media/ceph Type=4fbd7e29-9d25-41b8-afd0-062c0ceff05d 

此外,如果这不适合你,也有configurationudev的device单元: http : //www.freedesktop.org/software/systemd/man/systemd.device.html