Newsgroups: comp.os.vms
Path: news.mitre.org!blanket.mitre.org!philabs!newsjunkie.ans.net!newsfeeds.ans.net!news-was.dfn.de!news-kar1.dfn.de!news-fra1.dfn.de!Cabal.CESspool!bofh.vszbr.cz!news.maxwell.syr.edu!cpk-news-hub1.bbnplanet.com!news.bbnplanet.com!news.new-york.net!news.decus.org!eisner!schenkenberg
From: schenkenberg@eisner.decus.org (Brian Schenkenberger, VAXman-)
Subject: Re: Problems with OpenVMS registry
Reply-To: VAXman@TMESIS.COM
Lines: 89
Organization: DECUServe
Message-ID: <1997Dec3.063311.1@eisner>
References: <199712030645.HAA28763@gate.fim.fgan.de>
X-Trace: news.decus.org 881148794 20825 SCHENKENBERG [192.67.173.2]
X-Nntp-Posting-Host: eisner.decus.org
Date: Wed, 3 Dec 1997 11:33:11 GMT

In article <199712030645.HAA28763@gate.fim.fgan.de>, win@gate.fim.fgan.de writes:
> Hello,
> 
> yesterday, during the OpenVMS systemupgrade from 6.2-1H3 to 7.1 AXP I was
> going into a trap. Two years ago I made the mistake to install POSIX without
> starting and using. In case of this, this product was out of my mind until
> yesterday. After upgrading and rebooting I got the following error message
> in an very early phase of system startup:
> 
> 	error loading POSIX$CFS_SERVICES.EXE status = 00002398
> 	error loading POSIX$KERNEL.EXE status = 00002398
> 
> After this the system crashes. I analysed the situation and remembered
> that there is an registry file under SYS$UPDATE:VMS$SYSTEM_IMAGES.IDX.
> Now my question: is this file exchangable? I have a registry file without
> load POSIX$... command. Or could I store an empty file under SYS$UPDATE:?
> If yes, which file attributes must that file have?

I wouldn't call this a registry file but....

Yes, you can modify this file and remove the offending execlets.  The
error you are getting is 00002398 which translates to the system error:
%SYSTEM-W-SYSVERDIF, system version mismatch; please relink

You'd need to (re)install Posix to correct this.

The interface for the SYS$UPDATE:VMS$SYSTEM_IMAGES.IDX manipulation is
in SYSMAN.  You'd need to issue:

$ MCR SYSMAN
SYSMAN> SYS_LOADABLE REMOVE <product> <image>

The <image>s in your case would be: POSIX$CFS_SERVICES and POSIX$KERNEL.
I do not know what the <product> field should be but you could easily 
find this by issuing a: $ DUMP/RECORD SYS$UPDATE:VMS$SYSTEM_IMAGES.IDX
The <product> will be the in the first 8 characters of the record.

Assuming the <product> name is POSIX, issue the following commands:

$ MCR SYSMAN
SYSMAN> SYS_LOADABLE REMOVE POSIX POSIX$CFS_SERVICES
SYSMAN> SYS_LOADABLE REMOVE POSIX POSIX$KERNEL
SYSMAN> EXIT

Now that that's done, you need to update the file which is actually read
during bootstrap: SYS$LOADABLE_IMAGES:VMS$SYSTEM_IMAGES.DATA

Do this by executing the procedure: $ @SYS$UPDATE:VMS$SYSTEM_IMAGES.COM

This will write the SYS$LOADABLE_IMAGES:VMS$SYSTEM_IMAGES.DATA file in
the proper format.  You can verify the images being there and/or removed
by issuing a $ DUMP/RECORD SYS$LOADABLE_IMAGES:VMS$SYSTEM_IMAGES.DATA.
Each execlet which is to be optionally loaded has a 256 byte record in
the SYS$LOADABLE_IMAGES:VMS$SYSTEM_IMAGES.DATA file.  For example: from
my SYS$LOADABLE_IMAGES:VMS$SYSTEM_IMAGES.DATA file:

Record number 1 (00000001), 256 (0100) bytes, RFA(0001,0000,0000)

 444C2453 59533C18 212C0000 00010101 ......,!.<SYS$LD 000000
 58452E45 47415353 454D2454 454E3E52 R>NET$MESSAGE.EX 000010
 44202D57 2D54494E 49535953 250A0D45 E..%SYSINIT-W- D 000020
 69662065 67617373 656D2074 656E4345 ECnet message fi 000030
 00000064 6564616F 6C20746F 6E20656C le not loaded... 000040
 00000000 00000000 00000000 00000000 ................ 000050
 {...}
Record number 2 (00000002), 256 (0100) bytes, RFA(0001,0000,0100)

 444C2453 59533C15 1E2F0000 00010101 ....../..<SYS$LD 000000
 0A0D4558 452E4E45 474F4D49 52503E52 R>PRIMOGEN.EXE.. 000010
 74737973 202D572D 54494E49 53595325 %SYSINIT-W- syst 000020
 45474F4D 49525020 6567616D 69206D65 em image PRIMOGE 000030
 00000064 656C6961 66206461 6F6C204E N load failed... 000040
 00000000 00000000 00000000 00000000 ................ 000050
 {...}

Record 1:  NET$MESSAGE is the image, DECnet is the product.
Record 2:  PRIMOGEN is the image, PRIMOGEN is the product.

> Digital should add an explanation of that problem to the 'Upgrade and
> Installation Manual' with a description of show redistry entries and
> removing them.

Agreed.  As well, Digital should add a MCR SYSMAN SYS_LOADABLE SHOW to
the set of commands for manipulating the optional loadable execlets.
--
VAXman-                                                     VAXman@TMESIS.COM
OpenVMS APE certification number: AAA-0001

... and in the end, the money you take is equal to the money you make.