[lxc-users] unprivileged container with systemd?
Serge Hallyn
serge.hallyn at ubuntu.com
Tue Feb 10 16:21:50 UTC 2015
Quoting Dirk Geschke (dirk at lug-erding.de):
> Hi Serge,
>
> > > Maybe it is an lxcfs problem at all?
> >
> > How have you been installing lxcfs? Is it possible that you have
> > an old copy sitting around?
>
> Argh, that's the problem:
>
> 1061 if (setns(newnsfd, 0) < 0)
>
> There is no setns in glibc of debian wheezy, therefore I copied
> this from lxc:
>
> /* Define setns() if missing from the C library */
> #ifndef HAVE_SETNS
> static inline int setns(int fd, int nstype)
> {
> #ifdef __NR_setns
> return syscall(__NR_setns, fd, nstype);
> #elif defined(__NR_set_ns)
> return syscall(__NR_set_ns, fd, nstype);
> #else
> errno = ENOSYS;
> return -1;
> #endif
> }
> #endif
>
> There is a __NR_setns:
>
> /usr/include/x86_64-linux-gnu/asm/unistd_64.h:#define __NR_setns 308
>
> but somehow this is not included during compile time, therefore
> setns is ...hmm... empty?
>
> It results in an
>
> errno = -38 ;
> return -1;
>
> Call me simply stupid, I had forgotten this adjustment.
>
> I simply added
>
> #define __NR_setns 308
>
> to lxcfs.c and now it works, it boots ubuntu!
>
> Ok, I still these errors on login:
>
> Failed to set cpu.shares on /wheezy/ubuntu-18: Permission denied
> Failed to set cpu.cfs_period_us on /wheezy/ubuntu-18: Permission denied
> Failed to set cpu.cfs_quota_us on /wheezy/ubuntu-18: Permission denied
> Failed to set blkio.weight on /wheezy/ubuntu-18: Permission denied
> Failed to set memory.limit_in_bytes on /wheezy/ubuntu-18: Permission
> denied
> Failed to reset devices.list on /wheezy/ubuntu-18: Permission denied
> Failed to reset devices.list on /wheezy/ubuntu-18/user.slice: Permission
> denied
> Failed to reset devices.list on
> /wheezy/ubuntu-18/user.slice/user-0.slice: Permission denied
> Failed to reset devices.list on
> /wheezy/ubuntu-18/user.slice/user-0.slice/user at 0.service: Permission
> denied
> Failed to reset devices.list on /wheezy/ubuntu-18/system.slice:
> Permission denied
> Cannot determine UID from slice user-0.slice
> Failed to reset devices.list on
> /wheezy/ubuntu-18/user.slice/user-0.slice/session-2.scope: Permission
> denied
>
> But it works!
>
> Please accept my apologies for being a moron...
>
> Best regards and many thanks for your help and patience!
NP :)
-serge
More information about the lxc-users
mailing list