Subject: Re: [vserver] set acl in a vserver / setfacl: Operation not supported
From: Herbert Poetzl <herbert@13thfloor.at>
Date: Tue, 16 Jun 2009 00:23:29 +0200

On Tue, Jun 16, 2009 at 12:13:25AM +0200, Ekkard Gerlach wrote:
> * Herbert Poetzl schrieb:

> > On Sun, Jun 14, 2009 at 06:04:53PM +0200, Ekkard Gerlach wrote:
> > > Hi, 
> > > somebody here has an idea how to enable setfacl in a vserver? 

> > > Suse 9.2 32Bit here is a vserver under debian-etch 64Bit kernel 2.6.18
> > > and works fine.

> > this is inside a guest?
> "inside"? Suse 9.2 is the guest, 
> I don't know whats "inside" or "outside"!

"inside" is in a context (i.e. 'in' a guest)
"outside" is on the host (might be a chroot or so as well)

> Suse 9.2 runs in its own namespace. The partitions (drbd-devices) of 
> Suse 9.2 are also mounted in the host, thats all: 

> haupt1 is the host:
> ===================
> haupt1:~# mount
> /dev/md0 on / type ext3 (rw,noatime,errors=remount-ro)
> tmpfs on /lib/init/rw type tmpfs (rw,nosuid,mode=0755)
> proc on /proc type proc (rw)
> sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
> procbususb on /proc/bus/usb type usbfs (rw)
> udev on /dev type tmpfs (rw,mode=0755)
> tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)
> devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=620)
> /dev/mapper/vg--haupt1-var--cache on /var/cache type ext3 (rw,noatime)
> /dev/mapper/vg--haupt1-var--log on /var/log type ext3 (rw,noatime)
> /dev/mapper/vg--haupt1-holdingdisk on /var/cache/amanda/dumps type ext3 (rw,noatime)
> nfsd on /proc/fs/nfsd type nfsd (rw)
> rpc_pipefs on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw)
> /dev/drbd0 on /var/lib/vservers/misc type ext3 (rw)
> /dev/drbd1 on /data/pserver type ext3 (rw)
> /dev/drbd2 on /data/pserver/boot type ext3 (rw)
> /dev/drbd3 on /data/pserver/home type ext3 (rw)
> /dev/drbd4 on /data/pserver/home/brennen type ext3 (rw)
> /dev/drbd5 on /data/pserver/nfsroot type ext3 (rw)

> > > On another machine Suse 10.2 (kernel 2.6.18) also works fine
> > > with debian-etch 64Bit kernel 2.6.18. 

> > again, inside a guest?
> same, see above. 

> > > But setfacl claims: 
> > >   pserver:/home/david/letters # setfacl --set u::rwx,g::---,o:---,m:rwx mydir/
> > >   setfacl: mydir: Operation not supported

> > > Directory "mydir" exists, acl is enabled in fstab with: [...] defaults,acl

> > in the guest config, or where is the 'acl' set?
> in /etc/vservers/pserver/fstab: 
> /dev/drbd1      /               ext3    defaults        0       0
> /dev/drbd2      /boot           ext3    defaults        0       0
> /dev/drbd3      /home           ext3    defaults,acl    0       0
> /dev/drbd4      /home/brennen   ext3    defaults        0       0
> /dev/drbd5      /nfsroot        ext3    defaults        0       0
> none    /proc           proc    defaults                0 0
> none    /dev/pts        devpts  gid=5,mode=620          0 0

> > >   pserver:~ # mount 
> > >   [...]
> > >   /dev/drbd3 on /home type ufs (acl)    
> > >   [...]

> > what does /proc/mounts contain?
> haupt1:~# cat /proc/mounts 
> rootfs / rootfs rw 0 0
> none /sys sysfs rw 0 0
> none /proc proc rw,nodiratime 0 0
> udev /dev tmpfs rw 0 0
> /dev/md0 / ext3 rw,noatime,data=ordered 0 0
> /dev/md0 /dev/.static/dev ext3 rw,data=ordered 0 0
> tmpfs /lib/init/rw tmpfs rw,nosuid 0 0
> usbfs /proc/bus/usb usbfs rw,nosuid,nodev,noexec 0 0
> tmpfs /dev/shm tmpfs rw,nosuid,nodev 0 0
> devpts /dev/pts devpts rw,nosuid,noexec 0 0
> /dev/mapper/vg--haupt1-var--cache /var/cache ext3 rw,noatime,data=ordered 0 0
> /dev/mapper/vg--haupt1-var--log /var/log ext3 rw,noatime,data=ordered 0 0
> /dev/mapper/vg--haupt1-holdingdisk /var/cache/amanda/dumps ext3 rw,noatime,data=ordered
0 0
> nfsd /proc/fs/nfsd nfsd rw 0 0
> rpc_pipefs /var/lib/nfs/rpc_pipefs rpc_pipefs rw 0 0
> /dev/drbd0 /var/lib/vservers/misc ext3 rw,data=ordered 0 0
> /dev/drbd1 /data/pserver ext3 rw,data=ordered 0 0
> /dev/drbd2 /data/pserver/boot ext3 rw,data=ordered 0 0
> /dev/drbd3 /data/pserver/home ext3 rw,data=ordered 0 0
> /dev/drbd4 /data/pserver/home/brennen ext3 rw,data=ordered 0 0
> /dev/drbd5 /data/pserver/nfsroot ext3 rw,data=ordered 0 0

> .. hmmm: no acl option shown here ... 
> The partitions are mounted here because they're exported by NFS, 
> client are DLC's (diskless clients) that mount the /data/pserver/...

well, there you go, no acl mount option means no acl :)

> > > On a Suse 9.2 installed natively this call of setfacl works fine but not 
> > > in a vserver. 

> > on the same filesystem?
> Another Suse 9.2 installation, completely different installation!
> > what kernel/patch exactly and what util-vserver version?

> haupt1:~# uname -a
> Linux haupt1 2.6.18-6-vserver-amd64 #1 SMP Thu May 8 07:27:16 UTC 2008
> x86_64 GNU/Linux
> haupt1:~# dpkg -l | grep util-vserver
> ii util-vserver 0.30.212-1 user-space tools for Linux-VServer virtual
> private servers

updating to a recent kernel and tools wouln't hurt

best,
Herbert

> thx a lot
> Ekkard