[oi-dev] heads up: zones not available after pkg update in global zone
Stephan Althaus
Stephan.Althaus at Duedinghausen.eu
Fri Jan 26 21:26:20 UTC 2024
On 1/26/24 18:42, Bill Sommerfeld via oi-dev wrote:
> On 1/26/24 01:17, Stephan Althaus wrote:
>> Maybe its only here and a local problem, but who knows ...
>>
>>
>> I did a pkg update this morning, and the zones are not available.
>>
>> # zoneadm list -cv
>> ID NAME STATUS PATH BRAND IP
>> 0 global running / ipkg shared
>> 1 mail running /zones/mail nlipkg excl
>> 2 www running /zones/www nlipkg excl
>>
>> The zones are booted, but zlogin is not possible, nor are the zones
>> reachable via ssh.
>
> Looks like execing the shell failed.
>
> Upstream illumos-gate just made an incompatible change to the private
> interface between libc and the kernel used by the exec*() family of
> functions.
>
> commit 2b395c3c2a39cdc00f9fe7ac497795bd112f7663
> Author: Andy Fiddaman <illumos at fiddaman.net>
> Date: Sat Jan 20 10:47:38 2024 +0000
>
> 5798 fexecve() needed per POSIX 2008
> Portions contributed by: Garrett D'Amore <garrett at damore.org>
> Reviewed by: Dan Cross <cross at oxidecomputer.com>
> Reviewed by: Bill Sommerfeld <sommerfeld at hamachi.org>
> Approved by: Gordon Ross <gordon.w.ross at gmail.com>
>
> Changes to the libc-kernel interface are relatively uncommon but
> should be expected to happen every so often.
>
> I see that you're using nlipkg zones, which aren't kept in sync with
> the global zone. Did you update the zones as well? If not, I'd
> expect most exec*() calls to fail with an EINVAL unless the new fourth
> argument to the underlying syscall is zero by chance.
>
> Update the zones along with the global zone and they should start
> working again. Just updating all the variants of libc.so.1 to match
> the global zone should be enough to get you up & limping again.
>
> - Bill
>
>
>
>
>
> _______________________________________________
> oi-dev mailing list
> oi-dev at openindiana.org
> https://openindiana.org/mailman/listinfo/oi-dev
Hello!
Thanks for the explanation.
The zone that did not work was updated a day before the global zone, BE
is "openindiana-2024:01:24" within the zone,
so the exec* stuff should be in..
But wait the merge was at timestamp 2024-01-23T19:29:54.000Z so maybe not..
Current BE of the global zone is "openindiana-2024:01:02" so the commit
is not in..
I will try to update the ng-zones first and after that the global zone,
or maybe better change the zones to ipkg first,
or just update the zones now and reboot the global zone to the
(currently unused) existing BE "openindiana-2024:01:26" for which the
problem exists..
i will think about it..
Thanks!
Regards,
Stephan
More information about the oi-dev
mailing list