Aw: Re: Questions about the output of jls

mj-mailinglist at gmx.de mj-mailinglist at gmx.de
Mon Dec 14 20:58:32 UTC 2020


>> 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 ...

--
Martin


More information about the freebsd-questions mailing list