Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 14 Dec 2020 14:48:31 -0800
From:      James Gritton <jamie@gritton.org>
To:        mj-mailinglist@gmx.de
Cc:        freebsd-questions@freebsd.org, Kyle Evans <kevans@freebsd.org>
Subject:   Re: Aw: Re: Questions about the output of jls
Message-ID:  <717b06895f048961caa772dcd325b66f@gritton.org>
In-Reply-To: <trinity-a595f020-1bf5-4c67-9044-9d26d5e017f1-1607979508775@3c-app-gmx-bs41>
References:  <trinity-1eddb95f-d7d8-4b02-be03-0296774a8434-1607875466295@3c-app-gmx-bap80> <CACNAnaHjBmr2F2%2BaZHOH3UsgOE0FL%2BSknUV7-a825NBRJJ%2BAHw@mail.gmail.com> <72165e2885787561bd7fc7384c7b03b8@gritton.org> <trinity-a595f020-1bf5-4c67-9044-9d26d5e017f1-1607979508775@3c-app-gmx-bs41>

next in thread | previous in thread | raw e-mail | index | archive | help
On 2020-12-14 12:58, mj-mailinglist@gmx.de wrote:
>>> On Sun, Dec 13, 2020 at 10:04 AM <mj-mailinglist@gmx.de> wrote:
>>>> 
>>>> Hi,
>>>> 
>>>> I habe a current system, where i have current and 12.2-STABLE jails.
>>>> Checking with jls, i get this output:
>>>> 
>>>> root@fbsd13:~ # jls -h jid name ip4.addr host.hostname vnet 
>>>> osrelease
>>>> path | column -t
>>>> jid name ip4.addr host.hostname vnet osrelease path
>>>> 8 j0 192.168.0.10 j0.local 2 13.0-CURRENT /jails/j0
>>>> 10 j1 - j1.local 1 13.0-CURRENT /jails/j1
>>>> 12 j2 - j2.local 1 13.0-CURRENT /jails/j2
>>>> 
>>>> the jails are running this versions:
>>>> 
>>>> root@fbsd13:~ # jexec -l j0 freebsd-version -u
>>>> 12.2-STABLE
>>>> root@fbsd13:~ # jexec -l j1 freebsd-version -u
>>>> 13.0-CURRENT
>>>> root@fbsd13:~ # jexec -l j2 freebsd-version -u
>>>> 12.2-STABLE
>>>> 
>>>> 
>>>> What is "osrelease"? Looking at the name, i would have guessed, it 
>>>> is
>>>> the
>>>> version of the freebsd userland, running in the jail. But it does't
>>>> seem so.
>>>> j1 and j2 are VNET jails, so it seems the 1 in the vnet column
>>>> signifies this,
>>>> j0 is a "standard" jail using the hosts network stack, so the 2 
>>>> stands
>>>> for standard?
>>>> 
>>> 
>>> Hi,
>>> 
>>> osrelease is what the jail sees as kern.osrelease and uname -r (see:
>>> jail(8)) (i.e. kernel version); it's either specified during jail
>>> creation or inherited from the parent prison if none is specified.
>>> 
>>> It looks like it's exporting a jailsys int for vnet, so these
>>> correspond to:
>>> 
>>> JAIL_SYS_DISABLE=0
>>> JAIL_SYS_NEW=1
>>> JAIL_SYS_INHERIT=2
>>> 
>>> So 2 is 'use parent vnet', 1 is 'new one created' -- I don't see this
>>> described in either jls(1) or jail(8), it'd probably be nice if we
>>> translated jailsys ints into "new"/"inherit" since one specifies
>>> "new"/"inherit" for them during creation.
>> 
>> True, that would be more human-readable. For that matter, I could
>> report booleans (such as allow.whatever) as "true" or "false" as well.
>> In both cases, the strings pass back to jail(8) OK, but I wonder if
>> there are any scripts out there that actually use those values in 
>> their
>> numeric form.
>> 
>> - Jamie
> 
> Thanks,
> 
> I did not realise, that osrelease and osreldate are "writable".
> When setting them in jail.conf they are shown by jls:
> 
> root@fbsd13:~ # jls -h jid name vnet ip4.addr host.hostname osrelease
> osreldate path | column -t
> jid  name  vnet  ip4.addr      host.hostname  osrelease     osreldate  
> path
> 26   j0    2     192.168.0.10  j0             12.2-STABLE   1202504    
> /jails/j0
> 27   j1    1     -             j1             13.0-CURRENT  1300131    
> /jails/j1
> 28   j2    1     -             j2             12.2-STABLE   1202504    
> /jails/j2
> 29   j4    1     -             j4             12.2-STABLE   1202504    
> /jails/j4
> 33   j5    2     192.168.0.15  j5             12.2-STABLE   1202504    
> /jails/j5
> 
> 
> 
> the representation of the vnet value differs, depending on the used
> jls parameters:
> 
> root@fbsd13:~ # jls -j j0 -h vnet
> vnet
> 2
> 
> root@fbsd13:~ # jls -j j1 -h vnet
> vnet
> 1
> 
> and
> 
> root@fbsd13:~ # jls -j j0 -n
> devfs_ruleset=4 nodying enforce_statfs=2 host=new ip4=disable 
> ip6=disable
> jid=26 name=j0 osreldate=1202504 osrelease=12.2-STABLE parent=0 
> path=/jails/j0
> nopersist securelevel=-1 sysvmsg=new sysvsem=new sysvshm=new 
> vnet=inherit ...
> 
> root@fbsd13:~ # jls -j j1 -n
> devfs_ruleset=4 nodying enforce_statfs=2 host=new ip4=inherit 
> ip6=inherit
> jid=27 name=j1 osreldate=1300131 osrelease=13.0-CURRENT parent=0 
> path=/jails/j1
> nopersist securelevel=-1 sysvmsg=new sysvsem=new sysvshm=new vnet=new 
> ...

Well, that's interesting.  It makes sense that the "-n" parameters
have to be something that would work passed to jail(8), but I'm glad
to be reminded I used the text values (the numbers would have worked).
And that means changing the other output is half done already!

- Jamie



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?717b06895f048961caa772dcd325b66f>