In config/ctdb.sysconfig file there is a uncomment CTDB_RECOVERY_LOCK option, which value is set to "/some/place/on/shared/storage". Use of quotes, without any information to remove it, may lead to problems that are hard to examine. I have configured CTDB on two nodes to use CTDB_RECOVERY_LOCK="/ctdb/lockfile" (/ctdb is on shared storage), start ctdb service (without any errors), then unplug one of the nodes. Then on node that was still connected I have got this errors: Taking out recovery lock from recovery daemon Take the recovery lock ctdb_recovery_lock: Failed to get recovery lock on '/ctdb/lockfile' Unable to get recovery lock - aborting recovery and ban ourself for 300 seconds Banning this node for 300 seconds I didn't know why ctdb failed to get recovery lock on '/ctdb/lockfile' as this file was always accessible from this node. Removing quotes from CTDB_RECOVERY_LOCK resolved my problem (CTDB_RECOVERY_LOCK=/ctdb/lockfile). You should remove quotes from CTDB_RECOVERY_LOCK option from ctdb.sysconfig file, please also consider some validity test of entered CTDB_RECOVERY_LOCK path.
Specifying CTDB_RECOVERY_LOCK file with quotes is not a problem. It works fine. Please ensure that there are no unprintable characters in the quoted string. Are you still having this problem?
No update for many years. The configuration file is a shell script snippet so, as already noted, quotes make no difference unless there are weird characters in the quoted string.