mkinstallp package creation failing "no such file: ./usr/lpp/<package name>/inst_root"

Hello, I'm trying to build a (bff) package from an already installed program (clam antivirus) using mkinstallp. However, mkinstallp fails with "no such file: ./usr/lpp/<package name>/inst_root"

I'm not sure why all files get created ok except for these particular ones. Any help would be greatly appreciated.

Here's my template file:

Package Name: clamav
Package VRMF: 0.96.1.0
Update: N
Fileset
  Fileset Name: clamav.rte
  Fileset VRMF: 0.96.1.0
  Fileset Description: Clam AntiVirus is an open source (GPL) anti-virus toolkit for UNIX
  Bosboot required: N
  License agreement acceptance required: N
  Name of license agreement:
  Include license files in this package: N
  License file path:
  Requisites: 
  USRLIBLPPFiles
    Pre-installation Script: clamav.aix.preinstall
    Unpre-installation Script: clamav.aix.preuninstall
    Post-installation Script: clamav.aix.postinstall
    Unpost-installation Script: clamav.aix.postuninstall
    Pre_rm Script: clamav.aix.preremove
  EOUSRLIBLPPFiles
  USRFiles
    /usr/local
    /usr/local/sbin
    /usr/local/sbin/clamav
  EOUSRFiles
  ROOT Part: Y
  ROOTFiles
    /opt/clamav
    /opt/clamav/.profile
    /opt/clamav/lib
    /opt/clamav/lib/pkgconfig
    /opt/clamav/lib/pkgconfig/libclamav.pc
    /opt/clamav/lib/libclamunrar.a
    /opt/clamav/lib/libclamunrar.la
    /opt/clamav/lib/libclamunrar_iface.a
    /opt/clamav/lib/libclamunrar_iface.la
    /opt/clamav/lib/libclamav.a
    /opt/clamav/lib/libclamav.la
    /opt/clamav/lib/libclamunrar_iface.so.6
    /opt/clamav/include
    /opt/clamav/include/clamav.h
    /opt/clamav/bin
    /opt/clamav/bin/clamav
    /opt/clamav/bin/clamscan
    /opt/clamav/bin/clamdscan
    /opt/clamav/bin/freshclam
    /opt/clamav/bin/sigtool
    /opt/clamav/bin/clamconf
    /opt/clamav/bin/clambc
    /opt/clamav/bin/clamav-config
    /opt/clamav/bin/rotateLogs
    /opt/clamav/sbin
    /opt/clamav/sbin/clamd
    /opt/clamav/db
    /opt/clamav/db/daily.cvd
    /opt/clamav/db/main.cvd
    /opt/clamav/db/bytecode.cvd
    /opt/clamav/share
    /opt/clamav/share/man
    /opt/clamav/share/man/man1
    /opt/clamav/share/man/man1/clamscan.1
    /opt/clamav/share/man/man1/freshclam.1
    /opt/clamav/share/man/man1/sigtool.1
    /opt/clamav/share/man/man1/clamdscan.1
    /opt/clamav/share/man/man1/clamconf.1
    /opt/clamav/share/man/man1/clamdtop.1
    /opt/clamav/share/man/man5
    /opt/clamav/share/man/man5/clamd.conf.5
    /opt/clamav/share/man/man5/clamav-milter.conf.5
    /opt/clamav/share/man/man5/freshclam.conf.5
    /opt/clamav/share/man/man8
    /opt/clamav/share/man/man8/clamd.8
    /opt/clamav/share/man/man8/clamav-milter.8
    /opt/clamav/etc
    /opt/clamav/etc/clamd.conf.bak
    /opt/clamav/etc/clamd.conf
    /opt/clamav/etc/freshclam.conf
    /opt/clamav/etc/freshclam.conf.bak
    /opt/clamav/tmp
    /opt/clamav/var
    /opt/clamav/var/run
    /opt/clamav/var/run/freshclamd.pid
    /opt/clamav/var/log
    /opt/clamav/var/log/clamd.log
    /opt/clamav/var/log/freshclam.log
    /etc/clamav
    /var/log
    /var/log/clamav
  EOROOTFiles
EOFileset

and here's what happens when I mkinstallp:

# mkinstallp -T clamav.tmplt
Using /tmp/clamtest as the base package directory.
Cannot find /tmp/clamtest/.info. Attempting to create.
Using /tmp/clamtest/.info to store package control files.
Cleaning intermediate files from /tmp/clamtest/.info.
 
Using clamav.tmplt as the template file.
clamav 0.96.1.0 I
processing clamav.rte
no such file: ./usr/lpp/clamav/inst_root/opt/clamav/tmp
no such file: ./usr/lpp/clamav/inst_root/etc/clamav
no such file: ./usr/lpp/clamav/inst_root/var/log
no such file: ./usr/lpp/clamav/inst_root/var/log/clamav
creating ./.info/liblpp.a
creating ./tmp/clamav.0.96.1.0.bff

Here are the above files, from my package installation directory:

# ls -ld opt/clamav/tmp
drwxr-xr-x    2 clamav   clamav          512 Jun 18 15:14 opt/clamav/tmp
# ls -ld etc/clamav
lrwxrwxrwx    1 root     system           15 Jun 23 08:46 etc/clamav -> /opt/clamav/etc
# ls -ld var/log/clamav
lrwxrwxrwx    1 root     system           19 Jun 23 08:46 var/log/clamav -> /opt/clamav/var/log

now, when I try to install:

/usr/lib/instl/sm_inst installp_cmd -a -Q -d '/tmp/clamBuildDir/tmp' -f 'clamav ALL @@I:clamav _all_filesets' '-c' '-N' '-g' '-X' '-G'
 
File:
    I:clamav.rte                   0.96.1.0
 
 
+-----------------------------------------------------------------------------+
                    Pre-installation Verification...
+-----------------------------------------------------------------------------+
Verifying selections...done
Verifying requisites...done
Results...
 
SUCCESSES
---------
  Filesets listed in this section passed pre-installation verification
  and will be installed.
 
  Selected Filesets
  -----------------
  clamav.rte 0.96.1.0                         # Clam AntiVirus is an open so...
 
  << End of Success Section >>
 
+-----------------------------------------------------------------------------+
                   BUILDDATE Verification ...
+-----------------------------------------------------------------------------+
Verifying build dates...done
FILESET STATISTICS
------------------
    1  Selected to be installed, of which:
        1  Passed pre-installation verification
  ----
    1  Total to be installed
 
+-----------------------------------------------------------------------------+
                         Installing Software...
+-----------------------------------------------------------------------------+
 
installp:  APPLYING software for:
        clamav.rte 0.96.1.0
 
 
Updating virus definitions...   [Failed]
0503-009 inucp:  Cannot access or open file /usr/lpp/clamav/inst_root/etc/clamav.
        Check path name and permissions.
0503-009 inucp:  Cannot access or open file /usr/lpp/clamav/inst_root/opt/clamav/tmp.
        Check path name and permissions.
0503-009 inucp:  Cannot access or open file /usr/lpp/clamav/inst_root/var/log.
        Check path name and permissions.
0503-009 inucp:  Cannot access or open file /usr/lpp/clamav/inst_root/var/log/clamav.
        Check path name and permissions.
 
0503-464 installp:  The installation has FAILED for the "root" part
        of the following filesets:
        clamav.rte 0.96.1.0
 
installp:  Cleaning up software for:
        clamav.rte 0.96.1.0
 
Finished processing all filesets.  (Total time:  7 secs).
 
+-----------------------------------------------------------------------------+
                                Summaries:
+-----------------------------------------------------------------------------+
 
Installation Summary
--------------------
Name                        Level           Part        Event       Result
-------------------------------------------------------------------------------
clamav.rte                  0.96.1.0        USR         APPLY       SUCCESS
clamav.rte                  0.96.1.0        ROOT        APPLY       FAILED
clamav.rte                  0.96.1.0        ROOT        CLEANUP     SUCCESS

You'll see from the above output that it's failing on the same files that the mkinstallp failed on. Anyone know how what I'm doing wrong and how to fix it? Thanks.

Hi,
before mkinstallp check

suser -a fuser cpu_hard fsize nofiles_hard nproc_hard >my_notes.txt

l
change if other <>-1 as

chuser fsize=-1 

next

mkinstallp -T clamav.tmplt
/usr/lib/instl/sm_inst installp_cmd -a -Q -d '/tmp/clamBuildDir/tmp' -f 'clamav ALL @@I:clamav _all_filesets' '-c' '-N' '-g' '-X' '-G'

john1212, thanks for your suggestion but limits are not the issue.

This issue has been resolved, or worked around anyway. After testing I found that the failures are happening on empty directories. To work around this I removed them from the files list and created the directories in the post script. I'm not sure why mkinstallp doesn't like empty directories but it doesn't.

---------- Post updated at 01:07 PM ---------- Previous update was at 01:03 PM ----------

can't find how to close this post, does moderator do this automatically?