32-bit jail on 64-bit host
Peter Blok
pblok at bsd4all.org
Thu Apr 22 18:13:20 UTC 2021
I tried to replace some of the 32-bit binaries before, but it started to require shared libs as well, so I stopped. I’ll give it a shot later.
I now run it with out vnet and it indeed works. I have managed to compile p5-DBD-Oracle which works now.
Because all of my other jails were vnet jails, I didn’t think about doing it the old way without vnet.
Peter
> On 22 Apr 2021, at 15:39, Ian Lepore <ian at freebsd.org> wrote:
>
> On Thu, 2021-04-22 at 12:32 +0200, Daniel Dettlaff via freebsd-hackers
> wrote:
>> If you need to run 32bit software with 64bit base system just try
>> creating 64bit jail with lib32 subsystem present. Then 32bit software
>> should be able to run properly in such jail, but you can't run 32bit
>> jail on 64bit base as Eugene said.
>>
>
> That is not what Eugene said, and you CAN run a 32-bit jail on a 64-bit
> host; I do so on this machine. As Eugene said, you simply need to copy
> a few selected 64-bit binaries into the jail, replacing the 32-bit
> version of those programs. That is, install the jail from a 32-bit
> build or packages, and then just copy the necessary few binaries from
> your host root filesystem into the jail.
>
> It would be nice if there was a list somewhere of which binaries need
> to be replaced. I just did it by trial and error... when I ran into
> things that didn't work, I tried using a 64-bit copy of that program
> and if it worked: problem solved.
>
> -- Ian
>
>>> On 22 Apr 2021, at 10:36, Peter Blok <pblok at bsd4all.org> wrote:
>>>
>>> Hi,
>>>
>>> I have created a 32-bit jail on a 64-bit running 12-STABLE. The
>>> jail is also build using the same source.
>>>
>>> The jail gives me a 32-bit environment. I’m getting an IP address
>>> and I can ping others on the same network segment.
>>>
>>> But I can’t set a default route.
>>>
>>> route add default 192.168.1.1
>>> route: writing to routing socket: Invalid argument
>>> add net default: gateway 192.168.1.1 fib 0: Invalid argument
>>>
>>> # netstat -rn
>>> Routing tables
>>> (0) (0) UH
>>> (0) (0) U
>>> (0) (0) UHS
>>> (0) (0) UH
>>> (0) (0) U
>>> (0) (0) UHS
>>>
>>> # ifconfig -a
>>> lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> metric 0 mtu 16384
>>> options=680003<RXCSUM,TXCSUM,LINKSTATE,RXCSUM_IPV6,TXCSUM_IPV6>
>>> inet6 ::1 prefixlen 128
>>> inet6 fe80::1%lo0 prefixlen 64 scopeid 0x1
>>> inet 127.0.0.1 netmask 0xff000000
>>> groups: lo
>>> nd6 options=21<PERFORMNUD,AUTO_LINKLOCAL>
>>> e0b_websip: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST>
>>> metric 0 mtu 1500
>>> options=8<VLAN_MTU>
>>> ether 0e:88:d7:20:99:80
>>> hwaddr 02:80:ad:6e:79:0b
>>> inet 192.168.1.205 netmask 0xffffff00 broadcast 192.168.1.255
>>> groups: epair
>>> media: Ethernet 10Gbase-T (10Gbase-T <full-duplex>)
>>> status: active
>>> nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
>>>
>>> Any idea how to fix this?
>>>
>>> I’m using vnet bridge
>>>
>>> Peter
>>>
>
More information about the freebsd-hackers
mailing list