[lxc-devel] [PATCH 2/4] oracle template: prevent mingetty from calling vhangup(2)
Dwight Engen
dwight.engen at oracle.com
Mon Nov 18 17:28:14 UTC 2013
This is needed when using the user namespace since the kernel check does
not allow user_ns root to successfully call vhangup(2), and mingetty will
quit in this case.
Signed-off-by: Dwight Engen <dwight.engen at oracle.com>
---
templates/lxc-oracle.in | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/templates/lxc-oracle.in b/templates/lxc-oracle.in
index 106150c..d3d6ff9 100644
--- a/templates/lxc-oracle.in
+++ b/templates/lxc-oracle.in
@@ -226,6 +226,9 @@ EOF
echo "# For libvirt/Virtual Machine Monitor" >>$container_rootfs/etc/securetty
echo "pts/0" >>$container_rootfs/etc/securetty
+ # prevent mingetty from calling vhangup(2) since it fails with userns
+ sed -i 's|mingetty|mingetty --nohangup|' $container_rootfs/etc/init/tty.conf
+
# dont try to unmount /dev/lxc devices
sed -i 's|&& $1 !~ /^\\/dev\\/ram/|\&\& $2 !~ /^\\/dev\\/lxc/ \&\& $1 !~ /^\\/dev\\/ram/|' $container_rootfs/etc/init.d/halt
@@ -234,7 +237,8 @@ EOF
# start a getty on /dev/console, /dev/tty[1-4]
if [ $container_release_major = "4" -o $container_release_major = "5" ]; then
- sed -i '/1:2345:respawn/i cns:2345:respawn:/sbin/mingetty console' $container_rootfs/etc/inittab
+ sed -i 's|mingetty|mingetty --nohangup|' $container_rootfs/etc/inittab
+ sed -i '/1:2345:respawn/i cns:2345:respawn:/sbin/mingetty --nohangup console' $container_rootfs/etc/inittab
sed -i '/5:2345:respawn/d' $container_rootfs/etc/inittab
sed -i '/6:2345:respawn/d' $container_rootfs/etc/inittab
fi
@@ -250,7 +254,7 @@ start on stopped rc RUNLEVEL=[2345]
stop on runlevel [!2345]
respawn
-exec /sbin/mingetty /dev/console
+exec /sbin/mingetty --nohangup /dev/console
EOF
fi
--
1.8.3.1
More information about the lxc-devel
mailing list