[Drbd-dev] drbdsetup legacy utils can't fall back to version 8.3

Lars Ellenberg lars.ellenberg at linbit.com
Tue Apr 22 14:56:24 CEST 2014


On Tue, Apr 22, 2014 at 01:56:16PM +0200, Lionel Sausin wrote:
> Dear DRBD developers,
> 
> Ubuntu 12.04 has several kernel users can choose from, some with
> DRBD 8.3 and others with 8.4.
> To address this, they have just deployed the drbd utils v8.4.3 with
> "--with-legacy_utils".
> This works fine for drbdadm but drbdsetup seems to not revert to the
> legacy version, even though drbdsetup is built and deployed to
> /lib/drbd/drbdsetup-83:
>     # /sbin/drbdsetup show 1
>     Could not connect to 'drbd' generic netlink family
> 
>     # /lib/drbd/drbdsetup-83 show 1
>     disk {
>         size                0s _is_default; # bytes
>     ...
>     }
> 
> From my (quick) reading of the source code, drbdadmin works because
> it adds /lib/drbd to the path using add_lib_drbd_to_path(), and
> drbdsetup seems not to.
> Is the correct fix to add a symlink from /lib/drbd/drbdsetup-83 to
> /sbin, or should drbdsetup be patched to search in /lib/drbd too?

"Correct" is whatever works for you.
As long as you know what version you are using, use the matching tools.

Note that using explicit path (anything with a '/' in it)
on drbdadm or drbdsetup causes them to expect the respective "legacy"
binary at that same path, beneath the current executable.
(on purpose).

So if you want to say /sbin/drbdsetup, and expect that to be able to
execvp drbdsetup-83, then yes, you have to make that accesible under
/sbin/drbdsetup-83, adding it to the PATH will not be good enough.

Also, as a heads up, we are in the process on splitting out the DRBD
userland, providing the "grand unified drbd utils", so this will all
change again within the next few weeks/month.


-- 
: Lars Ellenberg
: LINBIT | Your Way to High Availability
: DRBD/HA support and consulting http://www.linbit.com

DRBD® and LINBIT® are registered trademarks of LINBIT, Austria.


More information about the drbd-dev mailing list