Commits
Kir Kolyshkin authored 07a6ee99494
vzctl create: disallow VE_PRIVATE be a mount point As it is pointed out in bug #3166, when VE_PRIVATE is a mount point, container creation leads to a bunch of weird errors: # vzctl create $CTID --private '/data/$VEID' Creating container private area (debian-7.0-x86_64-minimal) Can't rename /data/10001.tmp to /data/10001: Device or resource busy Destroying container private area: /data/10001 Warning: directory /data/10001 is not on the same filesystem as /data/10001/vztmp - doing slow/sync removal /bin/rm: cannot remove `/data/10001': Device or resource busy Creation of container private area failed Previous attempt to fix this was to introduce logic for a special case when VE_PRIVATE is a mount point (see commits d6664f6a0e8d2e2, 2b1db5b8b638886, 320bc278ac7d2e3, and 33e7f02ce9a4dd4). Apparently, we can fix create this way, but more patches are needed to also fix vzctl destroy operation. An easier solution is just to check if VE_PRIVATE is a mount point and do not allow to create a container in such case, suggesting to use a subdirectory instead. This is what this commit does. https://bugzilla.openvz.org/3166 Reported-by: Pavel Odintsov <pavel.odintsov@gmail.com> Signed-off-by: Kir Kolyshkin <kir@openvz.org>