[DRBD-user] Debian package install instructions

Bryan L. Gay bryan.gay at bryangay.com
Wed Dec 30 08:03:07 CET 2009


So, it appears that if I edit the /usr/src/drbd-8.3/debian/rules file, 
change the ./configure line to use '--prefix=/usr' and add 
'--localstatedir=/var', everything builds and installs properly.

If this is agreed upon, I recommend this change be made to the source so 
that others don't spend the several hours I did finding and testing this 
change.

Tested on Debian Lenny 5.0.3, all current packages, drbd 8.3.6 using 
git, following the documentation for building .deb packages for Debian 
as found at:

http://www.drbd.org/users-guide-emb/s-build-deb.html

Bryan L. Gay wrote:
> After further research, I found that /usr/src/drbd-8.3/debian/rules 
> contained a configure script command that included '--prefix=/'
> I edited this file and changed the option to '--prefix=/usr/' and 
> rebuilt.
> Everything is in its proper place, except for /var/lib/drbd which 
> moved to /usr/var/lib/drbd due to the new prefix. This is not 
> consistent with previous behavior.
>
> I'll be testing additional changes to the rules file to try to fix 
> this and let you know what I find.
>
> If I can contribute to drbd, please let me know. I have spare servers 
> online with the ability to remove/re-install drbd as needed.
>
> Bryan L. Gay wrote:
>> I just ran into the same problem as a previous post described by 
>> Billy Guthrie on Nov 19, 2009.
>>
>> I had drbd running as version 8.3.4 and decided to go ahead and 
>> upgrade to 8.3.6. I retrieved a fresh copy of the git tree and made 
>> Debian packages per the instructions on the site: 
>> http://www.drbd.org/users-guide-emb/s-build-deb.html
>> This is the same installation procedure I followed with 8.3.4, so 
>> something has changed and borked the install paths:
>>
>> cd /usr/src
>> git clone http://git.drbd.org/drbd-8.3.git
>> cd drbd-8.3
>> git checkout drbd-8.3.6
>> dpkg-buildpackage -b -uc
>> cd ..
>> dpkg -i drbd8*.deb
>> module-assistant auto-install drbd8
>>
>> After rebooting, I found drbd to be running successfully, so I then 
>> chkconfig'd it off and started the corosync cluster. I had put the 
>> node in standby earlier, so I just ran 'crm node online' only to find 
>> the /usr/lib/ocf/resource.d/linbit directory was missing. I did find 
>> a directory named /lib/ocf/resource.d/linbit which appeared to be the 
>> correct directory in the wrong place.
>>
>> Florin's reply to the post indicated to run autoheader and autoconf, 
>> then build again. This is not in the installation instructions. I 
>> tried running autoheader in the /usr/src/drbd-8.3 directory and got 
>> this:
>>
>> # autoheader
>> autoheader: error: AC_CONFIG_HEADERS not found in configure.ac
>>
>> It looks to me like the _PREFIX isn't getting set to /usr when 
>> building the debian packages:
>>
>> # locate drbd | grep -v '/usr/src'
>> /etc/drbd.conf
>> /etc/drbd.conf.dpkg-dist
>> /etc/bash_completion.d/drbdadm
>> /etc/ha.d/resource.d/drbddisk
>> /etc/ha.d/resource.d/drbdupper
>> /etc/init.d/drbd
>> /etc/rc0.d/K08drbd
>> /etc/rc1.d/K08drbd
>> /etc/rc2.d/S70drbd
>> /etc/rc3.d/S70drbd
>> /etc/rc4.d/S70drbd
>> /etc/rc5.d/S70drbd
>> /etc/rc6.d/K08drbd
>> /etc/udev/rules.d/65-drbd.rules
>> /etc/xen/scripts/block-drbd
>> /lib/drbd
>> /lib/drbd/crm-fence-peer.sh
>> /lib/drbd/crm-unfence-peer.sh
>> /lib/drbd/notify-emergency-reboot.sh
>> /lib/drbd/notify-emergency-shutdown.sh
>> /lib/drbd/notify-io-error.sh
>> /lib/drbd/notify-out-of-sync.sh
>> /lib/drbd/notify-pri-lost-after-sb.sh
>> /lib/drbd/notify-pri-lost.sh
>> /lib/drbd/notify-pri-on-incon-degr.sh
>> /lib/drbd/notify-split-brain.sh
>> /lib/drbd/notify.sh
>> /lib/drbd/outdate-peer.sh
>> /lib/drbd/snapshot-resync-target-lvm.sh
>> /lib/drbd/unsnapshot-resync-target-lvm.sh
>> /lib/modules/2.6.26-2-amd64/kernel/drivers/block/drbd.ko
>> /lib/ocf/resource.d/linbit/drbd
>> /sbin/drbd-overview
>> /sbin/drbdadm
>> /sbin/drbdmeta
>> /sbin/drbdsetup
>> /share/man/man5/drbd.conf.5
>> /share/man/man8/drbd.8
>> /share/man/man8/drbdadm.8
>> /share/man/man8/drbddisk.8
>> /share/man/man8/drbdmeta.8
>> /share/man/man8/drbdsetup.8
>> /usr/lib/ocf/resource.d/heartbeat/drbd
>> /usr/share/doc/drbd8-module-2.6.26-2-amd64
>> /usr/share/doc/drbd8-module-source
>> /usr/share/doc/drbd8-utils
>> /usr/share/doc/drbd8-module-2.6.26-2-amd64/changelog.Debian.gz
>> /usr/share/doc/drbd8-module-2.6.26-2-amd64/copyright
>> /usr/share/doc/drbd8-module-source/changelog.Debian.gz
>> /usr/share/doc/drbd8-module-source/changelog.gz
>> /usr/share/doc/drbd8-module-source/copyright
>> /usr/share/doc/drbd8-utils/README.Debian
>> /usr/share/doc/drbd8-utils/TODO.Debian
>> /usr/share/doc/drbd8-utils/changelog.Debian.gz
>> /usr/share/doc/drbd8-utils/changelog.gz
>> /usr/share/doc/drbd8-utils/copyright
>> /usr/share/modass/overrides/drbd8-module-source
>> /var/cache/modass/drbd8-module-source.avail_version
>> /var/cache/modass/drbd8-module-source.buildlog.2.6.26-2-amd64.1257786992
>> /var/cache/modass/drbd8-module-source.buildlog.2.6.26-2-amd64.1262116984
>> /var/cache/modass/drbd8-module-source.buildstate.2.6.26-2-amd64
>> /var/cache/modass/drbd8-module-source.cur_version
>> /var/lib/drbd
>> /var/lib/dpkg/info/drbd8-module-2.6.26-2-amd64.list
>> /var/lib/dpkg/info/drbd8-module-2.6.26-2-amd64.md5sums
>> /var/lib/dpkg/info/drbd8-module-2.6.26-2-amd64.postinst
>> /var/lib/dpkg/info/drbd8-module-2.6.26-2-amd64.postrm
>> /var/lib/dpkg/info/drbd8-module-2.6.26-2-amd64.preinst
>> /var/lib/dpkg/info/drbd8-module-source.list
>> /var/lib/dpkg/info/drbd8-module-source.md5sums
>> /var/lib/dpkg/info/drbd8-utils.conffiles
>> /var/lib/dpkg/info/drbd8-utils.list
>> /var/lib/dpkg/info/drbd8-utils.md5sums
>> /var/lib/dpkg/info/drbd8-utils.postinst
>> /var/lib/dpkg/info/drbd8-utils.postrm
>> /var/lib/dpkg/info/drbd8-utils.prerm
>> /var/lib/drbd/drbd-minor-0.conf
>> /var/lib/drbd/node_id
>> /var/lock/drbd-147-0
>>
>> Shouldn't everything appearing under /lib be under /usr/lib ??
>> What's the easiest fix/workaround for me to get these packages 
>> built/installed in the proper locations?


More information about the drbd-user mailing list