]> git.proxmox.com Git - mirror_lxc.git/commit - src/lxc/conf.c
Setup devtmpfs and /dev for autodev bind mounts.
authorMichael H. Warfield <mhw@WittsEnd.com>
Tue, 12 Nov 2013 01:08:36 +0000 (20:08 -0500)
committerSerge Hallyn <serge.hallyn@ubuntu.com>
Thu, 21 Nov 2013 03:42:53 +0000 (21:42 -0600)
commitbc6928ffdb53145acb74a6cb1f958e53d5242696
treef0da4c70a864fd3d0b791ad020cd7afe016ab0e0
parent4d69b2939ce09fbe624636dc01734a542e050ef9
Setup devtmpfs and /dev for autodev bind mounts.

If autodev is not specifically set to 0 or 1, attempts to determine if
systemd is being utilized and forces autodev=1 to prevent host system
conflicts and collisions.

If autodev is enabled and the host /dev is mounted with devtmpfs
or /dev/.lxc is mounted with another file system...

Each container created by a privileged user gets a /dev directory
mapped off the host /dev here:

/dev/.lxc/${name}.$( hash $lxcpath/$name )

Each container created by a non-privileged user gets a /dev/directory
mapped off the host /dev here:

/dev/.lxc/user/${name}.$( hash $lxcpath/$name )

The /dev/.lxc/user is mode 1777 to allow unpriv access.

The /dev/.lxc/{containerdev} is bind mounted into the container /dev.

Fallback on failure is to mount tmpfs into the container /dev.

A symlink is created from $lxcpath/$name/rootfs.dev back to the /dev
relative directory to provid a code consistent reference for updating
container devs.

Signed-off-by: Michael H. Warfield <mhw@WittsEnd.com>
Signed-off-by: Serge Hallyn <serge.hallyn@ubuntu.com>
src/lxc/conf.c
src/lxc/conf.h
src/lxc/start.c