Aw: Re: Questions about the output of jls

James Gritton jamie at gritton.org
Mon Dec 14 22:48:39 UTC 2020


On 2020-12-14 12:58, mj-mailinglist at gmx.de wrote:
>>> On Sun, Dec 13, 2020 at 10:04 AM <mj-mailinglist at 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 at 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 at fbsd13:~ # jexec -l j0 freebsd-version -u
>>>> 12.2-STABLE
>>>> root at fbsd13:~ # jexec -l j1 freebsd-version -u
>>>> 13.0-CURRENT
>>>> root at 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 at 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 at fbsd13:~ # jls -j j0 -h vnet
> vnet
> 2
> 
> root at fbsd13:~ # jls -j j1 -h vnet
> vnet
> 1
> 
> and
> 
> root at 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 at 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


More information about the freebsd-questions mailing list