# drbd-utils v9.35.0

**URL:** <https://forums.linbit.com/t/drbd-utils-v9-35-0/1282>\
**Category:** Release Announcements\
**Tags:** drbd\
**Created:** [September 30, 2026, 12:38pm UTC](https://forums.linbit.com/t/drbd-utils-v9-35-0/1282 "2026-09-30T12:38:31Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![rck](https://avatars.discourse-cdn.com/v4/letter/r/c37758/32.png) [@rck](https://forums.linbit.com/u/rck)\
**Post date:** [September 30, 2026, 12:38pm UTC](https://forums.linbit.com/t/drbd-utils-v9-35-0/1282/1 "2026-09-30T12:38:31Z")

</div>

Dear DRBD users,

this is version 9.35.0 of drbd-utils. There have not been any  
significant changes since RC1 except some noteworthy drbdmon changes  
that for example significantly reduce flickering. The release contains  
improvements and fixes all over the place. Highlights include a major  
DRBDmon update, various drbdmeta metadata conversion improvements, and  
SELinux improvements. This release contains a lot more code than any of  
the previous I remember the last ~10 years, so please test.

# IMPORTANT - read before upgrading on Debian-based systems:

This release splits drbd-graceful-shutdown.service into separate  
disconnect and down services. Unfortunately, when upgrading from any  
previous version that ships drbd-graceful-shutdown.service (9.26.0 up  
to and including 9.34.0), the \*old\* package's prerm stops that service  
during the upgrade. Its ExecStop runs "drbdsetup down all", which takes  
down all DRBD resources on the live system in the middle of the package  
upgrade. RPM-based systems are not affected.

Before upgrading drbd-utils on a Debian-based system, neutralize the  
ExecStop with a runtime drop-in:

&nbsp;&nbsp;mkdir -p /run/systemd/system/drbd-graceful-shutdown.service.d  
&nbsp;&nbsp;printf '[Service]\nExecStop=\n' \>/run/systemd/system/drbd-graceful-shutdown.service.d/50-upgrade.conf  
&nbsp;&nbsp;systemctl daemon-reload  
&nbsp;&nbsp;# then upgrade drbd-utils

The drop-in lives in /run and is self-cleaning; it is gone after the  
next reboot. The service got split into 2 separate services  
(drbd-graceful-{down,disconnect}.service), so you can keep the override for  
the old one till you reboot, you don't need to remove the file or reboot  
immediately.

If you upgraded without this step and your resources went down,  
"drbdadm up all" (or restarting linstor-satellite) brings them back up.

Please test, if we don't find any issues the final release will be about  
a week from now.

Regards, rck

GIT: [Prepare 9.35.0 · LINBIT/drbd-utils@e1e02e7 · GitHub](https://github.com/LINBIT/drbd-utils/commit/e1e02e77e6d068f626cef7c3998ed08b0fde7669)  
TGZ: [https://pkg.linbit.com//downloads/drbd/utils/drbd-utils-9.35.0.tar.gz](https://pkg.linbit.com//downloads/drbd/utils/drbd-utils-9.35.0.tar.gz)  
PPA: [LINBIT DRBD9 Stack : “LINBIT” team](https://launchpad.net/~linbit/+archive/ubuntu/linbit-drbd9-stack)

Changelog:  
9.35.0  
-----------  
\* drbdadm,adjust: fix ordering to run del-peer after connect;  
&nbsp;&nbsp;&nbsp;avoids quorum-deadlocked resources when swapping a tiebreaker  
\* drbdadm: fix segfaults and buffer overflows (config parser,  
&nbsp;&nbsp;&nbsp;adjust with proxy without path, "\_unknown" options)  
\* drbdadm,adjust: support dedicated proxy nodes; name proxy  
&nbsp;&nbsp;&nbsp;connections after DRBD node names  
\* drbdadm: add dump-superblock command  
\* drbdadm: skip diskless volumes when iterating "all"  
\* drbdmeta: metadata conversion improvements: add convert-dump,  
&nbsp;&nbsp;&nbsp;re-create the bitmap on v09 to v08 conversion, refuse v07,  
&nbsp;&nbsp;&nbsp;restore-md handles changed bitmap slots/granularity and  
&nbsp;&nbsp;&nbsp;activity log geometry  
\* drbdmeta: create-md: add UUID control options (v09);  
&nbsp;&nbsp;&nbsp;report by how much a file system is in the way  
\* drbdmeta: resize: fix bitmap copy offset, fsync new metadata  
&nbsp;&nbsp;&nbsp;and zero the old region  
\* drbdmeta: mark all out of sync when the AL was disabled at  
&nbsp;&nbsp;&nbsp;a crash; initialize the AL on restore-md  
\* drbdmeta: add --quiet and --var-lib-drbd options  
\* drbdmeta: various fixes: out-of-bounds read in apply-al,  
&nbsp;&nbsp;&nbsp;memory leaks, 64 bit shift, reject foreign bitmap granularity  
\* drbdsetup: fix events2 --now blocking forever  
\* drbdsetup: fix "sequence mismatch in netlink reply" race in  
&nbsp;&nbsp;&nbsp;wait-\* commands  
\* drbdsetup: handle ERR\_PATH\_COLLISION; hint at  
&nbsp;&nbsp;&nbsp;DRBD\_GENL\_RCVBUF\_SZ on rcvbuf errors  
\* drbdsetup: show resync suspension by parallel-resync limit  
\* userspace: switch from genl\_magic macros to YNL-generated  
&nbsp;&nbsp;&nbsp;netlink headers  
\* libgenl: fix setsockopt sizes and unchecked realloc; no  
&nbsp;&nbsp;&nbsp;SO\_RCVBUF warning without CAP\_NET\_ADMIN  
\* SELinux: allow usermode helper transition to drbd\_t, module  
&nbsp;&nbsp;&nbsp;loading on Oracle UEK, setpgid for Pacemaker; auto-label  
&nbsp;&nbsp;&nbsp;/var/lib/linstor.d/  
\* drbdmon: major update: selection filters, bulk actions,  
&nbsp;&nbsp;&nbsp;export/import  
\* drbdmon: faster, flicker-free display: only redraw changed  
&nbsp;&nbsp;&nbsp;screen regions, single write() per update, use the  
&nbsp;&nbsp;&nbsp;terminal's synchronized output; decode cursor keys in  
&nbsp;&nbsp;&nbsp;application cursor key mode  
\* scripts: add drbd-fence-peer.sh fence-peer handler and  
&nbsp;&nbsp;&nbsp;find-resources-with-unrotated-uuids.sh  
\* drbd-verify.py: report which files are affected by  
&nbsp;&nbsp;&nbsp;out-of-sync blocks; new JSON schema and --report modes  
\* systemd: split drbd-graceful-shutdown into disconnect and  
&nbsp;&nbsp;&nbsp;down services  
\* debian,spec: do not stop or restart units on upgrade; handle  
&nbsp;&nbsp;&nbsp;drbd-configured.target; debian compat 9 to 12  
\* doc: new mailing list address; fix disk shipping procedure
