IvmConfigProperties.xml - свойства устройства, за которыми наблюдает ivman(8)
НАЗВАНИЕ
IvmConfigProperties.xml − свойства устройства, за которыми наблюдает ivman(8)
ОПИСАНИЕ
IvmConfigProperties.xml указывает свойства аппаратного обеспечения, за которыми наблюдает ivman(8), и
позволяет запускать определённые команды при изменении свойств устройства.
IvmConfigProperties.xml обрабатывается как файл XML. Его общий вид следующий:
<?xml version="1.0" encoding="UTF−8"?>
<ivm:PropertiesConfig version="0.1" xmlns:ivm="http://www.eikke.com/ivm">
<ivm:Match name="matchname" value="matchvalue">
<ivm:Property name="propertyname">
<ivm:Action value="propertyvalue1" exec="command1" />
<ivm:Action value="propertyvalue2" exec="command2" />
...
</ivm:Property>
</ivm:Match>
...
</ivm:PropertiesConfig>
Каждый раз при изменении свойства устройства, обрабатывается этот файл. Если правило Match совпадает с устройством,
у которого изменилось свойство, то обрабатываются все метки Property внутри правила Action. Если ’value’ равно новому значению изменившегося свойства, то будет
выполнена команда, указанная в ’exec’.
Элемент Match может иметь одно из следующих имён:
ivm.mountable
Указывает может ли и должно ли быть смонтировано данное устройство HAL. Должно принимать значение "true" (истина) или "false"
(ложь).
hal.anything
Строка на месте "anything" будет использована в качестве имени строки свойства устройства HAL, а значение этого свойства может быть
сравнено с указанной строкой. Запустите ’lshal’, чтобы увидеть список свойств HAL, которые можно здесь использовать.
*
Совпадает с любым устройством. Соблюдайте осторожность!
Элементы Match могут быть вложены настолько глубоко, насколько это может потребоваться.
Элемент Property может иметь следующие имена:
hal.anything
Строка на месте "anything" будет использоваться в качестве имени строки свойства устройства HAL, и если это свойство изменилось,
будут обработаны вложенные правила.
В качестве значения ’value’ элемента Action может использоваться любая строка. Если новое значение изменившегося
свойства равно этой строке, то будет выполнена команда, указанная в свойстве ’exec’. Оно также может принимать особое значение ’*’; в этом случае команда
’exec’ будет исполняться при каждом изменении свойства.
exec поддерживает подстановку свойств устройства HAL. Это делается помещением имени свойства между символами
$. Например, если внутри команды указано свойство $hal.volume.mount_point$, то перед выполнением оно будет заменено на точку монтирования тома.
При подстановке не выполняется экранирование символов, но символы ’ и " заменяются на ?, так что вы можете без опаски заключить подстановку в кавычки.
Существует также ещё один элемент Option, который можно настроить в этом файле, и он должен быть настроен вне
каких−либо блоков Match или Property. Синтаксис этой опции следующий:
<ivm:Option name="checkOnInit" value="true" />
Если значение опции checkOnInit − true (истина), то Ivman проверит каждое устройство системы на совпадение с правилом при запуске.
Например, если правило существовало при запуске службы в момент когда отдельные тома уже были смонтированы, а Ivman был запущен в тот момент, когда том уже был
смонтирован, то он запустит службу если и только если checkOnInit имел значение true.
Помните, что это файл XML, поэтому символы, имеющие особое значение в XML должны быть заэкранированы. Некоторые
символы, популярные при использовании в оболочке (&, <, >) являются этими специальными символами. В качестве краткой инструкции: & заменяется на
& , < заменяется на < , > заменяется на > , ’ заменяется на ' а " заменяется на " .
СМОТРИ ТАКЖЕ
ivman(8), IvmConfigBase.xml(5), IvmConfigActions.xml(5), IvmConfigConditions.xml(5)
АВТОР ПЕРЕВОДА
Перевод на русский язык выполнил Владимир Ступин <vladimir@stupin.su>.