Я хочу запустить с помощью udev под CoreOS сценарий добавления / удаления на диске.
Назначение / цель - автоматически смонтировать разделы данных ceph в конкретный каталог при подготовке к запуску / остановке osd в ceph-docker.
1) Во-первых, CoreOS использует systemd. Должен ли я использовать системный способ или просто создать свой файл в /etc/udev/rules.d? (каталог, который по умолчанию не существует).
2) Допустим, мне удалось обнаружить диск через udev и запустить скрипт с именем файла устройства. Как мне прочитать / dev / sda и определить, является ли это диском ceph. т.е. я хочу проверить код типа. Это должно быть 4fbd7e29-9d25-41b8-afd0-062c0ceff05d
udev
очень тесно интегрирован с systemd
, так что ты наверное не хочу создавать правила с помощью udev, а использовать модули монтирования systemd:
http://www.freedesktop.org/software/systemd/man/systemd.mount.html
Все эти параметры (включая проверку типа файловой системы) поддерживаются 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
Кроме того, если это не сработает для вас, есть также device
юниты, которые настраивают udev: http://www.freedesktop.org/software/systemd/man/systemd.device.html