[Pkg-sysvinit-devel] Bug#633845: initscripts: unupgradeable on vserver

Adam Borowski kilobyte at angband.pl
Thu Jul 14 12:37:20 UTC 2011


On Thu, Jul 14, 2011 at 01:29:44PM +0100, Roger Leigh wrote:
> On Thu, Jul 14, 2011 at 01:21:54PM +0200, Adam Borowski wrote:
> > On Thu, Jul 14, 2011 at 12:15:40PM +0100, Roger Leigh wrote:
> > > On Thu, Jul 14, 2011 at 01:01:20PM +0200, Adam Borowski wrote:
> > > > On Thu, Jul 14, 2011 at 11:57:29AM +0100, Roger Leigh wrote:
> > > > > What is the return value of ischroot in the vserver (when run as
> > > > > root)?
> > > > 
> > > > 2 (failure to detect)
> > > 
> > > Does /proc (/proc/1/root) exist inside the vserver?  Is /proc
> > > available during normal vserver operation?
> > 
> > It exists, but is unreadable, even to root:
> > 
> > [~]# ls -al /proc/1/root 
> > ls: cannot read symbolic link /proc/1/root: Permission denied
> > lrwxrwxrwx 1 root root 0 Jul 14 10:57 /proc/1/root
> 
> Is /proc/self/vinfo readable?

It is.

> We were using the following logic prior to the use of ischroot.  Does it
> work correctly for you?
> 
> if [ -e /proc/self/vinfo ]; then
>         # If XID: 0 is found, we're a vserver
>         # host, *not* a guest, hence return
>         # false
>         if grep '^XID:[[:space:]]*0$' /proc/self/vinfo 2>&1 >/dev/null; then
>                 return 1
>         fi
> fi

It does.  Returns 1 on the host, passes through on guest.
Both on lenny and squeeze kernels.

-- 
1KB		// Yo momma uses IPv4!





More information about the Pkg-sysvinit-devel mailing list