I recently updated one of our servers from 6100-08-05-1415 to 6100-08-06-1441 and the `oslevel -s` is showing the correct version, but when I run an `lppchk -v` I am hit with:
lppchk: The following filesets need to be installed or corrected to bring
the system to a consistent state:
bos.net.tcp.client 6.1.8.19 (usr: COMMITTED, root: not installed)
Output from `lslpp -l bos.net.tcp.client`, wherein I am assuming this is what it's complaining about (version in /etc/ is lower than version in /usr/) but I am not sure how to fix that...
Fileset Level State Description
----------------------------------------------------------------------------
Path: /usr/lib/objrepos
bos.net.tcp.client 6.1.8.19 COMMITTED TCP/IP Client Support
Path: /etc/objrepos
bos.net.tcp.client 6.1.8.18 COMMITTED TCP/IP Client Support
I have attempted to upgrade bos.net.tcp.client 6.1.8.19 to bos.net.tcp.client 6.1.8.20 from the next service pack, but that then errors out with:
0503-466 installp: The build date requisite check failed for fileset bos.net.tcp.client.
Installed fileset build date is 1316. Selected fileset does not have a build date, but one is required.
0503-466 installp: The build date requisite check failed for fileset bos.net.tcp.client.
Installed fileset build date is 1341. Selected fileset does not have a build date, but one is required.
installp: Installation failed due to BUILDDATE requisite failure.
Any sort of downgrade also fails on this package so I cant even bring it down to the base level and then re-upgrade it. I have opened a PMR with IBM support but they're extraordinarily slow to respond so I was hoping that others here may have some experience rectifying issues like this.
# sudo installp -acFXYd /ibm/patch/src bos.net.tcp.client
+-----------------------------------------------------------------------------+
Pre-installation Verification...
+-----------------------------------------------------------------------------+
Verifying selections...
Pre-installation Failure/Warning Summary
----------------------------------------
0503-500 installp: After completion of pre-installation processing,
there were no installable base level filesets found on the
installation media. Note that use of the force install option
(-F flag) will cause installp to consider only base level filesets
(fileset updates will be ignored). No installation has occurred.
However when searching within that directory:
# ls -l | grep bos.net.tcp.client
-rw-rw-r-- 1 me mygroup 31207424 Oct 02 12:18 bos.net.tcp.client.6.1.8.1.U
-rw-rw-r-- 1 me mygroup 31289344 Oct 02 13:50 bos.net.tcp.client.6.1.8.19.U
We're not using an AIX CD. We downloaded the full SP from FixCentral and are storing it on an NFS share. I was also able to install it just fine on another server from the same source without it giving me these issues.
I saw a lot of troubles in my life trying installing packages from an NFS share. I can't explain it. In different environments with different NFS settings and shares. Sometimes everything is ok, sometimes some mystic with package installation. Try to copy the fileset to the local directory and install it.
Find an AIX CD from TL8. Then you will have access to .I package (installable), not .U package (updates) and you can try to apply the fix again.
I'll go ahead and download the full CD of the OS and hopefully that will work as installing from a local directory did not. Thanks for your ideas and help with this!
As this is bos.net.tcpip.* I am wondering if this system was originally installed using SbD (Secure by Default) - as that removes some additional files - and it is known to be difficult to update down the road.
I inherited this environment about 3-4 months ago and I don't believe it was set up using IBM best practices. Also the lppchk -f is something I ran yesterday and it returned nothing. I am going to be giving kgb's ideas a shot here soon, just completing the download of the 6.1 iso (or udf as IBM now provides). Thanks.
Ok we found the issue, and it was pretty stupid. The bos.net.tcp.client pre upgrade check-up script was failing, causing the package to fail the install (or just be skipped). What was the cause of it failing you ask? No sendmail.cf file in /etc/mail. Once I created that file, the patch worked seemlessly. That seemed pretty ridiculous to me but thanks again for your help.
# mv /etc/mail/sendmail.cf /etc/mail/sendmail.cfx
# lppchk -f bos.net.tcp.client
lppchk: 0504-206 File /etc/mail/sendmail.cf could not be located.
#
# # restore
# mv /etc/mail/sendmail.cfx /etc/mail/sendmail.cf
# lppchk -f bos.net.tcp.client
#
# # no output - all expected files were found
#
Wildcard checking ... sendmail.cf error still there btw...
# lppchk -f
lppchk: 0504-206 File /usr/ios/lpm/gui/httpd/conf/org.eclipse.osgi/.lazy.1 could not be located.
lppchk: 0504-208 Size of /usr/ios/lpm/gui/httpd/logs/error-log-0.html is 443,
expected value was 6482.
lppchk: 0504-208 Size of /usr/ios/lpm/gui/httpd/logs/error-log-1.html is 1793,
expected value was 48.
lppchk: 0504-206 File /usr/ios/lpm/gui/httpd/conf/org.eclipse.osgi/.state.1 could not be located.
lppchk: 0504-208 Size of /usr/ios/lpm/gui/httpd/logs/trace-log-0.html is 74836,
expected value was 7547.
lppchk: 0504-208 Size of /usr/ios/lpm/gui/httpd/logs/trace-log-1.html is 155024,
expected value was 48.
lppchk: 0504-206 File /usr/ios/lpm/gui/httpd/conf/org.eclipse.osgi/.manager/.fileTable.4 could not be located.
lppchk: 0504-206 File /usr/ios/lpm/gui/httpd/conf/org.eclipse.osgi/.manager/.fileTable.5 could not be located.
lppchk: 0504-206 File /usr/ios/lpm/gui/httpd/conf/org.eclipse.osgi/.bundledata.1 could not be located.
lppchk: 0504-206 File /etc/mail/sendmail.cf could not be located.
If I mentioned the wrong command above (with just the -f argument) - please accept my apologies, because lppchk is what I meant.
And I would like to take this moment to repeat to a wider audience - what I was telling a customer this week - removing files that installp (or any software management program) thinks is installed - without using the program so it can update it's history aka data regarding installed files, by definition breaks system integrity - and is begging trouble. (My customer this week had different problems - a package that has package XXX as a dependency did not work because all of XXX was no longer installed (THEIR security department had done an audit and identified file to be removed because they had not been accessed for XXX days. THAT policy is now being reevaluated.)
---------- Post updated at 02:23 PM ---------- Previous update was at 02:15 PM ----------
The formatting is terrible - accept my apologies - here is the short description
One of the "features" of installp is the option to include scripts at "pre", "post", and final "config" scripts.
The primary purpose of pre_i and pre_u (pre-install and pre-update) is to be sure that the system is in a known state and passes prerequisites. That is, these are run before the software in the package is installed.
The post_i or post_u scripts are a moment to verify that the files installed correctly; this is then followed by the "config" scripts that can perform automated configuration - if any.
I wrote this up in more detail - for myself initially - but have it online - just scroll down a bit - here: buildaix - AIXTOOLS