From: Paul Sladen (vserver_at_paul.sladen.org)
Date: Fri 01 Nov 2002 - 02:10:48 GMT
On Thu, 31 Oct 2002, Vlad wrote:
> I slice the hard drive in x amount of partitions and then just symlink
> them from the /vserver dir; Its obviously a very dirty way of doing it
> but it works for me :)
I really recommend LVM! Rather than forcing you create 27 partitions in the
first place you can just add them as required; you address these partitions
by name rather than device number:
/dev/lvm-set-name/lvm-partition-name
eg:
/dev/vservers/alpha
and then you can just mount that straight into `/vservers' and
create/delete/resize additional partitions for new vservers as required.
> For the quota for the users inside the server it gets ever nastier.
> [...] Where logic and common sense don't cut it, violence and
> brute-forcing always work.
Well that is /one way/... :) That example shows (IMHO)--more clearly than
anything else--that we need a better way!
DSVR's FreeVSD (for reference) does this (which is similar to what you're
doing); Mount the user-editable-disk-partition (from a loopback file) into:
/usr/local/
Then symlink `/root' and `/home' into directories under `/usr/local'.
Bear-in-mind that they aren't allowing root access through, everything is
done by a pseudo-root user and proxying the commands with setuid root
binaries that check the uids of the files that are going to be manipulated.
They also get around the quotaing problem by allocating each ```virtual
server''' its own set of uid/gid's and proxying the quota requests.
-Paul
-- Nottingham, GB