Hello...
I'm trying to edit the fencedevice 'passwd' attribute in my
/etc/cluster/cluster.conf using the XML lens. The problem is, my password has
to have a special character in it, and I'm having trouble escaping it.
This is what the line needs to look like:
<fencedevice agent="fence_ipmilan" ipaddr="x.x.x.x" name="fence_ora1"
login="fenceme" passwd="abc12\!def"/>
So, here's what I'm trying to do:
setm /files/tmp/cluster.conf/cluster/fencedevices//fencedevice/#attribute
passwd "abc12\\!def" (the backslash has to be there for fence_ipmilan)
This 'appears' to work, as this is what I get when I dump the xml:
augtool> dump-xml
/files/tmp/cluster.conf/cluster/fencedevices//fencedevice/#attribute/passwd
<augeas
match="/files/tmp/cluster.conf/cluster/fencedevices//fencedevice/#attribute/passwd">
<node label="passwd"
path="/files/tmp/cluster.conf/cluster/fencedevices/fencedevice[1]/#attribute/passwd">
<value>abc12\!def</value>
</node>
<node label="passwd"
path="/files/tmp/cluster.conf/cluster/fencedevices/fencedevice[2]/#attribute/passwd">
<value>abc12\!def</value>
</node>
<node label="passwd"
path="/files/tmp/cluster.conf/cluster/fencedevices/fencedevice[3]/#attribute/passwd">
<value>abc12\!def</value>
</node>
</augeas>
But, when I try to save, I get
augtool> print /augeas//error
/augeas/files/tmp/cluster.conf/error = "put_failed"
/augeas/files/tmp/cluster.conf/error/path =
"/files/tmp/cluster.conf/cluster/fencedevices/fencedevice/#attribute"
/augeas/files/tmp/cluster.conf/error/lens =
"/usr/share/augeas/lenses/dist/xml.aug:109.4-.51:"
/augeas/files/tmp/cluster.conf/error/message = "Failed to match \n ({
/[:A-Z_a-z][.0-:A-Z_a-z-]*/ = /([^\\001-\\004']*\"[^\\001-\\004']*)/ } | {
/[:A-Z_a-z][.0-:A-Z_a-z-]*/ = /([^\\001-\\004\"]*'[^\\001-\\004\"]*)/ } | {
/[:A-Z_a-z][.0-:A-Z_a-z-]*/ = /([^\\001-\\004\"'\\\\]*)/ })({
/[:A-Z_a-z][.0-:A-Z_a-z-]*/ = /([^\\001-\\004']*\"[^\\001-\\004']*)/ } | {
/[:A-Z_a-z][.0-:A-Z_a-z-]*/ = /([^\\001-\\004\"]*'[^\\001-\\004\"]*)/ } | {
/[:A-Z_a-z][.0-:A-Z_a-z-]*/ = /([^\\001-\\004\"'\\\\]*)/ })*\n with tree\n
{ \"agent\" = \"fence_ipmilan\" } { \"ipaddr\" = \"x.x.x.x\" } { \"name\" =
\"fence_ora1\" } { \"login\" = \"fenceme\" } { \"passwd\" = \"abc12\\!def\" }"
I've tried every combination of quotes and backslashes that I can think of, and
I'm out of ideas.
Any help anyone can offer will be greatly appreciated!
Thanks,
Brian
_______________________________________________
augeas-devel mailing list
[email protected]
https://www.redhat.com/mailman/listinfo/augeas-devel