Rsync installation for puppet AIX package

Source: Internet
Author: User
Tags rsync
Problems encountered during rsync installation using rpm in Aix and Solutions

Recently, I was tossing over the AIX system. It had a package management tool named installp, but it was useless and I didn't know where to find the package.

Thanks to the RPM support provided by Aix, the most familiar RPM package is used for software installation. Puppet And mcollective are installed. Then I started to manage it, but there was a problem when installing rsync later.

The packages in Aix basically have three sources:

  • IBM official website (http://www-03.ibm.com/systems/power/software/aix/linux/toolbox/alpha.html), official, but some package does not, so I did not download from here.
  • 3rd-Party website perzl.org (http://www.perzl.org /)
  • Large Open Source Software archive for Aix (http://www.bullfreeware.com /)
    In these two 3rd-party websites, the bullfreeware search package is more convenient, So I basically use the basic RPM package here.

Next, let's continue with rsync. What is the download address of my http://www.bullfreeware.com/affichage.php? Id = 1653.

The dependencies are gettext, popt, and libiconv, And I have installed them. However, an error occurred while executing the rsync command. The error is probably like the following, because our production environment is too restrictive, which is a rough mistake I remember.

exec(): 0509-036 Cannot load program /usr/bin/rsync because of the following errors:
0509-022 Cannot load module /usr/lib/popt.a(popt.so).
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 rpm.
0509-150 Dependent module /usr/lib/popt.a(popt.so). could not be loaded.
0509-022 Cannot load module .

It means that libiconv. so.2 cannot be loaded. I went to find it and did not have this file. libiconv. A is always there. Run the rpm-QL libiconv package to check whether libconv. so.2 is in the list. It's strange. Then run the LDD/usr/bin/rsync command to view the required shared library, and the file libiconv. so.2 is not found.

In theory, the file libiconv. so.2 must belong to the libiconv package, but why does it not exist in the package? I started searching for it on Google. After searching for it for half a day, I saw this discussion. Http://bbs.chinaunix.net/thread-1692140-1-1.html, here the latest [yddll] (http://bbs.chinaunix.net/space-uid-46610.html) gave a prompt, said man ar.

So I came to man.

AR(1)                        GNU Development Tools                       AR(1)

Name
Ar-create, modify, and extract from Archives

Synopsis
Ar [-plugin name] [-x32_64] [-] P [mod [relpos] [count] Archive
[Member…]

Description
The GNU ar program creates, modifies, and extracts from archives.
Archive is a single file holding a collection of other files in
Structure that makes it possible to retrieve the original individual
Files (called members of the archive ).

   The original files’ contents, mode (permissions), timestamp, owner, and   group are preserved in the archive, and can be restored on extraction.   GNU ar can maintain archives whose members have names of any length;   however, depending on how ar is configured on your system, a limit on   member-name length may be imposed for compatibility with archive   formats maintained with other tools.  If it exists, the limit is often   15 characters (typical of formats related to a.out) or 16 characters   (typical of formats related to coff).</pre>

Create, modify, and decompress archives. Now that someone prompts me, I will try again.

>ar -v -t /usr/lib/libiconv.a
r—r—r— 2/2 116968 Nov 10 17:22 2010 shr4.o
r—r—r— 2/2 117218 Nov 10 17:22 2010 shr.o

After the test, I suddenly thought of something wrong. The software I installed with RPM is under/opt/freeware, and then soft links are made to the actual directory, however, this file does not seem to be a link, and you can view the two files separately.
ls -l /usr/lib/libiconv.a
ls -l /opt/freeware/lib/libiconv.a

Sorry, it is still the reason above. I cannot post the result. The difference is that the two are different. I used the AR command to view the libiconv. A under/OPT and found the libiconv. so.2 file.

The final solution is to delete/usr/lib/libiconv. a, and then create the link file pointing to/opt/freeware/lib/libiconv. a. Run the rsync command again.

Updated 2013.10.17

Later, I found that there would be no such problem when using the packages on the IBM official website, so I will try my best to use the RPM packages on the official website on AIx in the future.

 

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.