Почему мое правило udev вызывается дважды?

Почему мое правило udev вызывается дважды?

Я работаю на CentOS 7. Я написал правило udev для запуска службы каждый раз при вставке компакт-диска. Правило udev следующее:

KERNEL=="sr1", SUBSYSTEM=="block", ACTION=="change", ENV{ID_CROM_CD}=="1", ENV{DEVTYPE}=="1", RUN+="/bin/systemctl restart cd-mount@%k.service"

Сервис настроен следующим образом:

[Unit]
Description=Mount CD drive on %i

[Service]
Type=oneshot
RemainAfterExit=true
ExecStart=/usr/local/bin/cd-mount.sh %i
ExecStop=/usr/local/bin/cd-mount.sh %i

По какой-то причине мое правило udev вызывается дважды. Это довольно раздражает, так как я монтирую CD-ROM, из-за этого у меня возникали ошибки. Как мне написать свое правило так, чтобы оно вызывалось только один раз?

EDIT: Я изменил правило udev, и теперь служба перезапускается только один раз. Правило udev выглядит так:

KERNEL=="sr[0-1]", SUBSYSTEM=="block", ACTION=="change", ENV{ID_CROM_CD}=="1", ENV{DEVTYPE}=="disk", ENV{ID_FS_TYPE}=="udf" RUN+="/bin/systemctl restart cd-mount@%k.service"

Осталась одна проблема. Это правило определяет, что вставлен другой CD, только когда используется команда "eject". Когда я нажимаю кнопку eject, ничего не происходит. Кто-нибудь знает, почему?

Связанный контент