Pkg database hungover - How best to fix?

noskcaJ leahciM JACKSON at encompasserve.org
Fri Jul 14 19:08:40 CEST 2017


> Hi Michael,

Hiya Dago,

Am 12.07.2017 um 23:43 schrieb noskcaJ leahciM via users
<users at lists.opencsw.org>:
>> [ ... ]
>> I've just tried, again, to update CSWcurl on the S10 branded
>> zone, and, as before it complains thus:-
>> [ ... ]
>> ----->o------
>> # pkgutil -i CSWcurl
>> => Installing CSWggettext-data-0.19.8,REV=2016.09.08 (1/6) ...
>> pkgadd: ERROR: Package <CSWggettext-data> is currently installed
>> on the system in the global zone. To install the new instance of
>> this package in global zone only you must specify the -G option.
>> To install the new instance of this package in all zones you must
>> first remove the existing instance of this package from global
>> zone first (via pkgrm) and then install the new instance of this
>> package in all zones.  pkgadd: ERROR: package <CSWggettext-data>
>> cannot be installed on this system/zone
>> Exiting pkgutil due to pkgadd error: 1
>> -----o<-----
>>
>> On the contrary, <CSWggettext-data> isn't installed in the global
>> zone (there aren't any CSW packages installed in the global zone).
>> OTOH, it is installed in a non-global zone; the non-global zone
>> that was formerly this zone's parent global zone.
>>
>> I appreciate that this isn't actually a pkgutil issue, but how
>> should I go about fixing this?
>
>
> Ugly, ugly, ugly, there is no documented way out of this AFAIK.
> I guess the only workaround is to manually "fix" the issue by
> editing out the stuff from the previous global zone from the
> package database /var/sadm/pkg and /var/sadm/install/contents.


On the s10s_u10wos_17b zone, /var/sadm/install/contents looks big
and hairy enough to decide to leave well alone.

> Make sure to make a snapshot upfront to be on the safe side.


Now there's a thought.  I've got a recovery archive of global and
all the subordinate zones, but that's Last Chance Saloon territory.

If in global I do a beadm create, boot into that new snapshot then
uninstall all of the CSW packages in the S11.3 zone that the
problem S10 zone thinks is still the GZ, then return to that
problem S10 zone and re-try that failed installation of CSWcurl,
shouldn't it "just work"?

Then, if it does, surely all I need to is reinstall in the S11.3
zone all(*) the CSW packages I removed earlier.

If it doesn't work (meaning I've still got a broken S10 zone and
now, on top of that, a S11.3 zone emptied of all CSW packages),
surely all I have to do is drop back to the previous BE and
delete my trial BE and be no worse-off? 

> Best regards
>
>  Dago

Thank you

Michael


(*)I too must have skipped consecutive updates as I've got a
number of packages not in-catalogue.  Presumably, providing
I backup the package directories /var/sadm/pkg, they can just
be reinstalled again using the old Companion CD approach;
cd to /var/sadm/pkg and do a pkg install -d . CSWx2x for example?
They'll be installed, I'll still get "not in catalog" messages
and won't be any worse-off than I am now.



More information about the users mailing list