[root@159 ~]# rsync
rsync: error while loading shared libraries: libiconv.so.2: cannot open shared object file: No such file or directory

当出现这种情况时,是少相关库文件的错(.so)。
解决方法一:
[root@159 ~]# which rsync
/usr/local/bin/rsync
[root@159 ~]# ldd /usr/local/bin/rsync
        linux-gate.so.1 =>  (0x00c1c000)
        libpopt.so.0 => /usr/lib/libpopt.so.0 (0x00630000)
        libiconv.so.2 => not found
        libc.so.6 => /lib/libc.so.6 (0x00678000)
        /lib/ld-linux.so.2 (0x00654000)
[root@159 ~]# find / -name libiconv.so.2
/usr/local/lib/libiconv.so.2
[root@159 ~]# ln -s /usr/local/lib/libiconv.so.2 /lib/libiconv.so.2
[root@159 ~]# ldconfig
[root@159 ~]# ldd /usr/local/bin/rsync
        linux-gate.so.1 =>  (0x00f95000)
        libpopt.so.0 => /usr/lib/libpopt.so.0 (0x00630000)
        libiconv.so.2 => /lib/libiconv.so.2 (0x009d3000)
        libc.so.6 => /lib/libc.so.6 (0x00678000)
        /lib/ld-linux.so.2 (0x00654000)
(这样就可以了。)
方法二:
[root@159 ~]# cat /etc/ld.so.conf
include ld.so.conf.d/*.conf
[root@159 ~]# vim /etc/ld.so.conf
[root@159 ~]# cat /etc/ld.so.conf
include ld.so.conf.d/*.conf
/usr/local/lib
[root@159 ~]# ldconfig
[root@159 ~]# ldd /usr/local/bin/rsync
        linux-gate.so.1 =>  (0x00fb9000)
        libpopt.so.0 => /usr/lib/libpopt.so.0 (0x00630000)
        libiconv.so.2 => /usr/local/lib/libiconv.so.2 (0x008b7000)
        libc.so.6 => /lib/libc.so.6 (0x00678000)
        /lib/ld-linux.so.2 (0x00654000)
(就是在/etc/ld.so.conf中加了一行/usr/local/lib)