Go Premium for a chance to win a PS4. Enter to Win

x
?
Solved

Trouble when trying to run rsync in AIX

Posted on 2014-01-02
6
Medium Priority
?
4,449 Views
Last Modified: 2014-01-03
Hi,

I am trying to run rsync on an AIX Server, but I keep getting the following error messages.
I've tried to include helpful information below.

Thank you.

exec(): 0509-036 Cannot load program rsync because of the following errors:
        0509-022 Cannot load module /usr/lib/libpopt.a(libpopt.so.0).
        0509-150   Dependent module /usr/lib/libiconv.a(libiconv.so.2) could not be loaded.
        0509-152   Member libiconv.so.2 is not found in archive
        0509-022 Cannot load module rsync.
        0509-150   Dependent module /usr/lib/libpopt.a(libpopt.so.0) could not be loaded.
        0509-022 Cannot load module .
rsync: connection unexpectedly closed (0 bytes received so far) [sender]
rsync error: error in rsync protocol data stream (code 12) at io.c(605) [sender=3.0.9]

# rsync ?
rsync: link_stat "/stest/backup/?" failed: No such file or directory (2)
rsync error: some files/attrs were not transferred (see previous errors) (code 23) at main.c(1052) [sender=3.0.9]

# cd /stest/backup
# ls
friday               sunday              
monday           system_files.tar.gz  wednesday
saturday          thursday
statistics         tuesday

VERSIONS And Info:

AIX version 6100-07-01-1141
rsync version 3.0.9-1

Fileset                      Level  State  Type  Description (Uninstaller)
----------------------------------------------------------------------------
rsync                      3.0.9-1    C     R    A program for synchronizing
                                                   files over a network.
                                                   (/bin/rpm)
lslpp -L libiconv*
Fileset                      Level  State  Type  Description (Uninstaller)
--------------------------------------------------------------------------
libiconv                    1.14-2    C     R    Character set conversion
                                                 library, portable iconv
                                                 implementation (/bin/rpm)
lslpp -L popt*
Fileset                      Level  State  Type  Description (Uninstaller)
----------------------------------------------------------------------------
popt                        1.16-1    C     R        C library for parsing command
                                                              line parameters (/bin/rpm)
popt-devel                  1.16-1    C     R    Development files for the popt        
                                                              library (/bin/rpm)
0
Comment
Question by:OffsiteTech
  • 3
  • 2
6 Comments
 
LVL 68

Expert Comment

by:woolmilkporc
ID: 39753403
Hi,

did you get all the mentioned packages (rsync, libiconv, popt) from the same source (probably BULL)?

If so it's indeed a bit strange that rsync would search its shared libraries in /usr/lib, because it should have been linked with the proper path /opt/freeware/lib.

What do you get with "ldd $(which rsync)" and "ls -l /usr/lib/libiconv* /usr/lib/libpopt*" ?

Creating links for libpopt in /usr/lib would be fairly easy, but a link for libiconv would conflict with IBM's own implementation which already resides in /usr/lib.

wmp
0
 
LVL 25

Expert Comment

by:madunix
ID: 39753909
Try
lppchk with c/v/f
To verify that all filesets have all required requisites and are completely installed.
https://publib.boulder.ibm.com/infocenter/aix/v6r1/index.jsp?topic=%2Fcom.ibm.aix.cmds%2Fdoc%2Faixcmds3%2Flppchk.htm
0
 
LVL 68

Expert Comment

by:woolmilkporc
ID: 39754066
lppchk does not operate on packages of type "R" (= RPM)
0
Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 

Author Comment

by:OffsiteTech
ID: 39754235
Hi,

Hope this is what you were asking for...the packages were pulled from a different server, but I think they originated at Perzl.

# find . -name "rsync*" -print
./opt/freeware/bin/rsync
./opt/freeware/doc/rsync-3.0.9
./opt/freeware/man/man1/rsync.1
./opt/freeware/man/man5/rsyncd.conf.5
./sys.images/rsync-3.0.9-1.aix6.1.ppc.rpm
./usr/bin/rsync
./usr/opt/perl5/lib/site_perl/5.8.8/URI/rsync.pm
./usr/opt/perl5/lib64/site_perl/5.8.8/URI/rsync.pm
#
#
# ldd /usr/bin/rsync
/usr/bin/rsync needs:
         /usr/lib/libc.a(shr.o)
         /usr/lib/libpthreads.a(shr_xpg5.o)
         /usr/lib/libiconv.a(shr4.o)
         /usr/lib/libpopt.a(libpopt.so.0)
         /unix
         /usr/lib/libcrypt.a(shr.o)
         /usr/lib/libpthreads.a(shr_comm.o)
         /usr/lib/libintl.a(libintl.so.1)
         /usr/lib/libc.a(shr_64.o)
         /usr/lib/libiconv.a(shr4_64.o)
         /usr/lib/libcrypt.a(shr_64.o)
#
#
# ldd /opt/freeware/bin/rsync
/opt/freeware/bin/rsync needs:
         /usr/lib/libc.a(shr.o)
         /usr/lib/libpthreads.a(shr_xpg5.o)
         /usr/lib/libiconv.a(shr4.o)
         /usr/lib/libpopt.a(libpopt.so.0)
         /unix
         /usr/lib/libcrypt.a(shr.o)
         /usr/lib/libpthreads.a(shr_comm.o)
         /usr/lib/libintl.a(libintl.so.1)
         /usr/lib/libc.a(shr_64.o)
         /usr/lib/libiconv.a(shr4_64.o)
         /usr/lib/libcrypt.a(shr_64.o)

#
# ls -l /usr/lib/libiconv*
lrwxrwxrwx    1 root     system           28 Dec 01 13:50 /usr/lib/libiconv.a ->
 /opt/freeware/lib/libiconv.a
#
# ls -l /usr/lib/libpopt*
lrwxrwxrwx    1 root     system           32 Nov 28 12:42 /usr/lib/libpopt.a ->
../../opt/freeware/lib/libpopt.a
lrwxrwxrwx    1 root     system           33 Nov 28 12:42 /usr/lib/libpopt.la ->
 ../../opt/freeware/lib/libpopt.la
lrwxrwxrwx    1 root     system           33 Nov 28 12:42 /usr/lib/libpopt.so ->
 ../../opt/freeware/lib/libpopt.so
lrwxrwxrwx    1 root     system           35 Nov 28 12:42 /usr/lib/libpopt.so.0-> ../../opt/freeware/lib/libpopt.so.0
lrwxrwxrwx    1 root     system           38 Oct 14 2011  /usr/lib/libpopt.so.0.0.0 -> /usr/opt/freeware/lib/libpopt.so.0.0.0
#
0
 
LVL 68

Accepted Solution

by:
woolmilkporc earned 2000 total points
ID: 39754515
Your packages are obviously not (all) from perzl.org.
At least libiconv is not from there. That version does not contain a link from /usr/lib/libiconv.a to /opt/freeware/lib/libiconv.a (as in your case), because forcibly creating such a link would destroy the library shipped by IBM.

Are you sure that the rsync binary in your path (the one that throws the errors in question) is the same as /usr/bin/rsync or /opt/freeware/bin/rsync?

Or do you just have a LIBPATH setting in your environment? If so, retry the failing rsync after unsetting it:

unset LIBPATH

If this doesn't help I think you should reinstall rsync and all its dependencies as offered by perzl.org.

You'll need (mind the sequence!):

- zlib http://www.oss4aix.org/download/RPMS/zlib/zlib-1.2.8-1.aix5.1.ppc.rpm
- libgcc http://www.oss4aix.org/download/RPMS/gcc/libgcc-4.8.2-1.aix6.1.ppc.rpm
- libffi http://www.oss4aix.org/download/RPMS/libffi/libffi-3.0.13-1.aix5.1.ppc.rpm
- libiconv http://www.oss4aix.org/download/RPMS/libiconv/libiconv-1.14-2.aix5.1.ppc.rpm
-- or install bos.iconv.com. bos.rte.iconv and bos.iconv.ucs.com from the AIX base DVD.
- gettext http://www.perzl.org/aix/index.php?n=Main.Gettext
-- Please observe the instructions given on that page!
- popt http://www.oss4aix.org/download/RPMS/popt/popt-1.16-1.aix5.1.ppc.rpm
- rsync http://www.oss4aix.org/download/RPMS/rsync/rsync-3.1.0-1.aix5.1.ppc.rpm
0
 

Author Comment

by:OffsiteTech
ID: 39755488
It is still reporting errors after the unset so I will re-install as advised.

Thank you wmp!
0

Featured Post

Keep up with what's happening at Experts Exchange!

Sign up to receive Decoded, a new monthly digest with product updates, feature release info, continuing education opportunities, and more.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

How to update Firmware and Bios in Dell Equalogic PS6000 Arrays and Hard Disks firmware update.
Windows Server 2003 introduced persistent Volume Shadow Copies and made 2003 a must-do upgrade.  Since then, it's been a must-implement feature for all servers doing any kind of file sharing.
Learn several ways to interact with files and get file information from the bash shell. ls lists the contents of a directory: Using the -a flag displays hidden files: Using the -l flag formats the output in a long list: The file command gives us mor…
This video shows how to set up a shell script to accept a positional parameter when called, pass that to a SQL script, accept the output from the statement back and then manipulate it in the Shell.
Suggested Courses

783 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question