在Red Hat Enterprise linux Server release 6.6 (Santiago)上安裝了Symantec Backup Exec Remote Agent 2010后,啟動Backup Exec Remote Agent 2010啟動服務時報錯。
[root@getlnx15 be]# /etc/init.d/VRTSralus.init start
Starting Symantec Backup Exec Remote Agent ..............................
Starting Symantec Backup Exec Remote Agent: [FAILED]
檢查日志時發現如下錯誤信息:: error while loading shared libraries: libstdc++.so.5: cannot open shared object file: No such file or directory
[root@getlnx15 ~]# cd /var/VRTSralus/
[root@getlnx15 VRTSralus]# ls
beremote.service.log ralus.ver
[root@getlnx15 VRTSralus]# more beremote.service.log
/opt/VRTSralus/bin/beremote: error while loading shared libraries: libstdc++.so.5: cannot open shared object file: No such file or directory
[root@getlnx15 VRTSralus]#
在搜索一些資料后,從網上下載了libstdc++.so.5文件,并將其放置在/usr/lib,但是發現這樣處理其實無法解決問題。在搜索一番資料后,發現只需要安裝compat-libstdc++-33-3.2.3-69.el6.x86_64.rpm即可。如下所示,安裝了對應包以后,Symantec Backup Exec Remote Agent 2010成功啟動!
[root@getlnx15 Packages]# ls *libstdc++*
compat-libstdc++-296-2.96-144.el6.i686.rpm libstdc++-4.4.7-11.el6.x86_64.rpm
compat-libstdc++-33-3.2.3-69.el6.i686.rpm libstdc++-devel-4.4.7-11.el6.i686.rpm
compat-libstdc++-33-3.2.3-69.el6.x86_64.rpm libstdc++-devel-4.4.7-11.el6.x86_64.rpm
libstdc++-4.4.7-11.el6.i686.rpm libstdc++-docs-4.4.7-11.el6.x86_64.rpm
[root@getlnx15 Packages]# rpm -qa | grep libstdc
libstdc++-4.4.7-11.el6.x86_64
[root@getlnx15 Packages]# rpm -ivh compat-libstdc++-33-3.2.3-69.el6.i686.rpm
warning: compat-libstdc++-33-3.2.3-69.el6.i686.rpm: Header V3 RSA/SHA256 Signature, key ID fd431d51: NOKEY
error: Failed dependencies:
libgcc_s.so.1 is needed by compat-libstdc++-33-3.2.3-69.el6.i686
libgcc_s.so.1(GCC_3.0) is needed by compat-libstdc++-33-3.2.3-69.el6.i686
libgcc_s.so.1(GCC_3.3) is needed by compat-libstdc++-33-3.2.3-69.el6.i686
libgcc_s.so.1(GLIBC_2.0) is needed by compat-libstdc++-33-3.2.3-69.el6.i686
[root@getlnx15 Packages]# rpm -ivh libgcc-4.4.7-11.el6.x86_64.rpm
warning: libgcc-4.4.7-11.el6.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID fd431d51: NOKEY
Preparing... ########################################### [100%]
package libgcc-4.4.7-11.el6.x86_64 is already installed
[root@getlnx15 Packages]# rpm -ivh libgcc-4.4.7-11.el6.i686.rpm
warning: libgcc-4.4.7-11.el6.i686.rpm: Header V3 RSA/SHA256 Signature, key ID fd431d51: NOKEY
Preparing... ########################################### [100%]
1:libgcc ########################################### [100%]
[root@getlnx15 Packages]# rpm -ivh compat-libstdc++-33-3.2.3-69.el6.x86_64.rpm
warning: compat-libstdc++-33-3.2.3-69.el6.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID fd431d51: NOKEY
Preparing... ########################################### [100%]
1:compat-libstdc++-33 ########################################### [100%]
那么compat-libstdc++-33-3.2.3-69.el6.x86_64.rpm與libstdc++.so.5是什么關系,其實使用rpm -ql命令就可以查找一個rpm包里面包含哪些文件,如下所示,compat-libstdc++-33-3.2.3-69.el6.x86_64.rpm里面包含文件libstdc++.so.5,這也是為何安裝compat-libstdc++-33-3.2.3-69.el6.x86_64.rpm即可解決問題的原因。
[root@getlnx15 cdrom]# rpm -ql compat-libstdc++-33-3.2.3-69.el6.x86_64/usr/lib64/libstdc++.so.5/usr/lib64/libstdc++.so.5.0.7[root@getlnx15 cdrom]#
小知識點:
查看一個rpm包包含哪些文件,可以有兩種方式:
1:一個沒有安裝過的軟件包,使用rpm -qlp rpm-filename.rpm 2:一個已經安裝過的軟件包,使用rpm -ql packet-name
查看一個文件屬于哪個rpm包, rpm -qf /path/filename
新聞熱點
疑難解答
圖片精選