1847193 Members
4063 Online
110263 Solutions
New Discussion

Re: Comparing /usr/lib

 
brian_31
Super Advisor

Comparing /usr/lib

We have two machines running 11.0 (L class)build identically. However on one box i have the following two libraries which are extra.
(##libdld.2 and ##dld.sl are additional on the BOX A.) Are these important? if so how do i copy these over to the other box? (since they have #)

BOX A

-r-xr-xr-x 1 bin bin 188416 Oct 10 2001 ##dld.sl
-r-xr-xr-x 1 bin bin 1466368 Aug 2 2002 ##libc.1
-r-xr-xr-x 1 bin bin 458752 Aug 2 2002 ##libcma.1
-r-xr-xr-x 1 bin bin 4206592 Aug 2 2002 ##libdce.1
-r-xr-xr-x 1 bin bin 12334 Oct 10 2001 ##libdld.1
-r-xr-xr-x 1 bin bin 24576 Oct 10 2001 ##libdld.2

BOX B


-r-xr-xr-x 1 bin bin 1466368 Aug 2 2002 ##libc.1
-r-xr-xr-x 1 bin bin 458752 Aug 2 2002 ##libcma.1
-r-xr-xr-x 1 bin bin 4206592 Aug 2 2002 ##libdce.1
-r-xr-xr-x 1 bin bin 12334 Aug 2 2002 ##libdld.1

Best Regards

Brian

5 REPLIES 5
James R. Ferguson
Acclaimed Contributor

Re: Comparing /usr/lib

Hi Brian:

I believe that these are backup copies from a patch upgrade. That is, they have been renamed as you see when the current versions were applied.

Regards!

...JRF...
No Devices Found
New Member

Re: Comparing /usr/lib

##libdld.2
------------
The version of libdld.sl is now libdld.2 for 10.30 and this is same for 11.00. This was changed for threads (errno changed).


##dld.sl - dynamic loader
------------------------------
The /lib/dld.sl program is the dynamic loader. It is invoked automatically at startup time by /lib/crt0.o in programs that use
shared libraries. The dynamic loader is, itself, a shared library, although it defines no symbols for use by user programs.

At run time, the dynamic loader attaches to the process all shared libraries that were linked with the program. The text segment of a
library is shared among all processes that use it. The data and bss segments are shared on a page-by-page basis. When a process writes to
a data or bss page, a modified copy of that page is made for the process.
Dennis Handly
Acclaimed Contributor

Re: Comparing /usr/lib

>JRF: I believe that these are backup copies from a patch upgrade.

Exactly. If swinstall can't remove the shlibs that are busy, it renames them with a leading "#". There may be a file that contains these files, so they can be removed on a reboot?

In any case, if you can remove them go ahead:
rm "##dld.sl" ./##libc.1 \##libcma.1
rm \#*

>how do i copy these over to the other box? (since they have #)

Just do some quoting. :-)
James R. Ferguson
Acclaimed Contributor

Re: Comparing /usr/lib

Hi (again) Brian:

Actually, the use of the "#" character as the first of a filename to represent a backup copy of a file is documented in the 'swinstall' manapges. It is noted therein, that files being replaced are overwritten unless they are in use, and in that case they are unlink()ed or moved to '#'.

Normallly, the names of files so handled this way by 'swinstall' are written to '/var/adm/sw/cleanupfile' and removed (when no longer in use) during a subsequent reboot.

Regards!

...JRF...
Dennis Handly
Acclaimed Contributor

Re: Comparing /usr/lib

>JRF: written to '/var/adm/sw/cleanupfile' and removed (when no longer in use) during a subsequent reboot.

Exactly. Except that reboot may come much later because the whole purpose of those patches is to not require a reboot. :-)
Also, for something like libc and dld, they may never become un-busy due to long running processes. (Though probably not for those 10.20 *.1 shlibs.)