jls usage

markham breitbach markham_breitbach at ssimicro.com
Fri Jul 12 16:12:35 UTC 2013


On 13-07-12 9:56 AM, Frank Leonhardt wrote:
> On 12/07/2013 16:32, Frank Leonhardt wrote:
>> I've tried using the actual jail name, and the hostname to be sure - nothing - and on
>> checking (jls -v) I'm somehow ending up with the Name being the same as the ID. I just
>> put this down to a quirk/bug (it's there in 8.2-9) but it sounds like it's not an issue
>> for anyone else. I'm defining them in rc.conf:
>>>>>
>>>>> jail_enable="yes"
>>>>> jail_list="one two three"
>>>>>
>>>>> jail_agnet_rootdir="/usr/jail/one"
>>>>> jail_agnet_hostname="one.mydomain.com"
>>>>> jail_agnet_ip="123.123.123.123"
>>>>> jail_agnet_devfs_enable="yes"
>>>>> jail_agnet_devfs_ruleset="devfsrules_jail"
>>>>>
>>>> You've configured "one" and "two" and "three" in your jail_list, but quite oddly...
>>>>
>>>> You have not defined "jail_one_*" or "jail_two_*" or "jail_three_*".
>>>>
>>>> I'm extremely confused as to how your jail even started!
>>>
>>> Sorry - should have said I'd obfuscated the IP addresses and hostnames (it's not
>>> really "one.mydomain.com" ;-) ) Unfortunately I forgot to obfuscate the jail name as
>>> fully as I thought in the startup lines. It should have read jail_one_rootdir &c.
>>>
>>> As I said, it's been working happily for years on lots of different installations and
>>> they're all configured the same. The only weirdness is that the jail name appears in
>>> the table as it's number.
>>
>> A further clarification - I know using the jail utility defaults the jail name to that
>> of its ID if you don't specify one, and presume this is the mechanism messing it up
>> here. However as I've gone to the trouble of configuring them in rc.conf with names,
>> listing said names in jail_list and when commands like:
>>
>> service jail start one
>> service jail stop one
>>
>> work just fine, I don't see what I'm doing wrong! Incidentally, it doesn't matter if I
>> start them at boot time or start/stop later - the jail name always sets to the jail-iD,
>> and not the name specified. I suspect a bug in the rc.d script, but I can't be the
>> first person to notice, can I??? I'll take a look.
>>
>
> Okay - answering my own question and solved... It's a bug (or is that a feature?).
>
> In /etc/rc.d/jail line 647 it currently reads:
>
> eval ${_setfib} jail ${_flags} -i ${_rootdir} ${_hostname} \
> \"${_addrl}\" ${_exec_start} > ${_tmp_jail} 2>&1 \
> </dev/null
>
> And it should (IMHO) read:
>
> eval ${_setfib} jail ${_flags} -n ${_jail} -i ${_rootdir} ${_hostname} \
> \"${_addrl}\" ${_exec_start} > ${_tmp_jail} 2>&1 \
> </dev/null
>
> Once changed, everything works find and your jails are named as per the rc.conf file
> definitions. Can anyone think of a reason for NOT fixing this?
>
> Regards, Frank.
>
>
>
I see where you are defining a hostname, but not a jail name. Jail name cannot contain the
"." character.

-Markham


More information about the freebsd-questions mailing list