Назад | Перейти на главную страницу

Скрипт, запускаемый udev для проверки таблиц разделов и проверки, является ли это диск ceph

Я хочу запустить с помощью 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