Hello,
when destroying the chroot, pbuilder umount run/shm, but if another process on
the system is accessing /run/shm then pbuilder keeps saying:
umount: /var/cache/pbuilder/build/11273/run/shm: target is busy
(In some cases useful info about processes that
use the device is found by lsof(8) or fuser(1).)
This error only affects chroots; you may want to use
user-mode-linux to avoid this message.
I would really prefer not to use u-m-l, so maybe you can consider other ways to
mount/umount /run/shm, like --bind-mount or --lazy umount, or any other
(better!) way to achieve the same result: dont error out if /run/shm is busy
when exiting the build env.
Thanks,
Sandro
any update on this? the current behaviour is extremely annoying
This is especially painful with the Jenkins Chroot plugin, which uses `pbuilder execute` to run things - a stray process from a failed CI test leads to gigs of "target is busy" messages in the build logs, which need manually killing. This doesn't seem inordinately difficult to resolve - lsof can filter on BUILDPLACE, add a flag to kill stray processes, and just kill all the detected processes when that's turned on
tags 810145 patch thanks This works, IME - no more multi-gig Jenkins logs spamming "cannot umount" over and over for days Sent from Outlook<http://aka.ms/weboutlook>
Jo Shields dixit:
Umm…
BUILDPLACE=-q
BUILDPLACE=.foo
Passing a user-controlled argument to grep without escaping
it beforehand (and choosing a grep dialect, especially as
GNU grep does not default to BRE) or switching grep to fixed
strings is bad.
Something like this, maybe?
… | grep -F -e "$BUILDPLACE" | …
People seem to assume that writing ${foo} instead of $foo
escapes more, when it makes no difference in fact.
bye,
//mirabilos
Any news on that /run/shm issue for pbuilder? It is currently blocking me from building packages as I can't upgrade my pbuilder tarball (as easily at least). I tried Jo's "proof of concept" patch, but no luck either. Dirk
I may have found the culprit. In my (rather old and carried forward from
prior versions) file /etc/pbuilderrc I still had
BINDMOUNTS="/run/shm"
and commenting it out worked! Yay.
Dirk
I'm running 0.229 and i can confirm i no longer see this problem - thanks!
I believe the situation improved a lot with 0.228 where we changed a bunch of how SHM is mounted (especially the defaults). But still if a process leaves zombie with an open fd somewhere it would still stall, I think.
Sent from my iPhone