mini_buildd.schroot module¶
Attention
wheezy or older builds on amd64: Re-enable linux’ vsyscall
In Debian kernel packages since 4.8.4-1~exp1
:
[ Ben Hutchings ]
* [amd64] Enable LEGACY_VSYSCALL_NONE instead of LEGACY_VSYSCALL_EMULATE.
This breaks (e)glibc 2.13 and earlier, and can be reverted using the kernel
parameter: vsyscall=emulate
I.e.: When running the Debian standard kernel and your mini-buildd instance needs to support wheezy
or earlier, you
need to re-enable this (in /etc/default/grub
).
You may use local-vsyscall-emulate.cfg
in examples
(a symlink should do) for this purpose.
On any running kernel, this is a poor man’s check to see if vsyscall is still enabled on your system:
grep "\[vsyscall\]" /proc/self/maps
See also
Debian Bug #847154, linux package’s NEWS
file.
Note
schroot: Verbosely logs commands (“Running command …”) explicitly via syslog (journalctl)
schroot seems to verbosely log any executed root-user command via syslog (user/notice). This will clutter journalctl’s (standard) log output via unit:
journalctl --unit mini-buildd.service --follow
As a workaround, specifying the (syslog compatibility) identifier like so helps to unclutter:
journalctl --identifier mini-buildd --follow
- class mini_buildd.schroot.Session(name, namespace='chroot')¶
Bases:
object
- close()¶
Close session (including retries on failure)
Attention
schroot: ‘target is busy’ on session close (stale schroot sessions)
Occasionally, a schroot session can’t be closed properly, leaving stale sessions around. Presumably, external programs (like ‘desktop mount scanners’) can cause this.
This internal close does try hard to avoid this – however, if disaster strikes anyway,
mini-buildd-cruft
may help to remove these stale sessions manually (i.e., asmini-buildd
user from the shell).
- call(_call, user='root')¶
- run(_call, user='root')¶
- info()¶
- update_file(file_path, content)¶
Write content to file
- set_debconf(key, value)¶
Set arbitrary debconf value