summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWilliam Hubbs <williamh@gentoo.org>2012-02-15 09:00:23 -0600
committerWilliam Hubbs <williamh@gentoo.org>2012-02-16 14:05:04 -0600
commita5509d681997321e966e776b6a0e4630aa827595 (patch)
tree79dd08c388f7306680ffbdea57528d51b53900d2
parent0c866e1a313f20679f6b7d3288636170f3057b59 (diff)
downloadopenrc-a5509d681997321e966e776b6a0e4630aa827595.tar.gz
openrc-a5509d681997321e966e776b6a0e4630aa827595.tar.bz2
openrc-a5509d681997321e966e776b6a0e4630aa827595.tar.xz
Enable binfmt_misc for openvz containers
Reported-by: Daniel Robbins <drobbins@funtoo.org> X-Gentoo-Bug: 401875 X-Gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=401875
-rw-r--r--init.d/procfs.in38
1 files changed, 20 insertions, 18 deletions
diff --git a/init.d/procfs.in b/init.d/procfs.in
index 6afc81f..baa33ad 100644
--- a/init.d/procfs.in
+++ b/init.d/procfs.in
@@ -8,7 +8,7 @@ depend()
{
use modules devfs
need localmount
- keyword -openvz -prefix -vserver -lxc
+ keyword -prefix -vserver -lxc
}
start()
@@ -20,23 +20,6 @@ start()
[ -e /proc/filesystems ] || return 0
- # Check what USB fs the kernel support. Currently
- # 2.5+ kernels, and later 2.4 kernels have 'usbfs',
- # while older kernels have 'usbdevfs'.
- if [ -d /proc/bus/usb -a ! -e /proc/bus/usb/devices ]; then
- local usbfs=$(grep -Fow usbfs /proc/filesystems ||
- grep -Fow usbdevfs /proc/filesystems)
- if [ -n "$usbfs" ]; then
- ebegin "Mounting USB device filesystem [$usbfs]"
- local usbgid="$(getent group usb | \
- sed -e 's/.*:.*:\(.*\):.*/\1/')"
- mount -t $usbfs \
- -o ${usbgid:+devmode=0664,devgid=$usbgid,}noexec,nosuid \
- usbfs /proc/bus/usb
- eend $?
- fi
- fi
-
# Setup Kernel Support for miscellaneous Binary Formats
if [ -d /proc/sys/fs/binfmt_misc -a ! -e /proc/sys/fs/binfmt_misc/register ]; then
if grep -qs binfmt_misc /proc/filesystems; then
@@ -58,6 +41,25 @@ start()
fi
fi
+ [ "$RC_SYS" == "OPENVZ" ] && return 0
+
+ # Check what USB fs the kernel support. Currently
+ # 2.5+ kernels, and later 2.4 kernels have 'usbfs',
+ # while older kernels have 'usbdevfs'.
+ if [ -d /proc/bus/usb -a ! -e /proc/bus/usb/devices ]; then
+ local usbfs=$(grep -Fow usbfs /proc/filesystems ||
+ grep -Fow usbdevfs /proc/filesystems)
+ if [ -n "$usbfs" ]; then
+ ebegin "Mounting USB device filesystem [$usbfs]"
+ local usbgid="$(getent group usb | \
+ sed -e 's/.*:.*:\(.*\):.*/\1/')"
+ mount -t $usbfs \
+ -o ${usbgid:+devmode=0664,devgid=$usbgid,}noexec,nosuid \
+ usbfs /proc/bus/usb
+ eend $?
+ fi
+ fi
+
# Setup Kernel Support for SELinux
if [ -d /selinux ] && ! mountinfo -q /selinux; then
if grep -qs selinuxfs /proc/filesystems; then