error while loading shared libraries: libiconv.so.이

1161 단어
최근 Zabbix를 디버깅하는 동안 오류가 발생했습니다.
/etc/init.d/zabbix_agentd start 

Starting zabbix_agentd:  /opt/program/zabbix/sbin/zabbix_agentd: error while loading shared libraries: libiconv.so.2: cannot open shared object file: No such file or directory                     [FAILED]

원인 분석:
ld 프롬프트에서 라이브러리 파일을 찾을 수 없습니다. 라이브러리 파일은 현재 디렉터리에 있습니다.링크기ld의 기본 디렉터리는/lib와/usr/lib입니다. 다른 경로에 놓아도 됩니다. 라이브러리 파일이 어디에 있는지 알려야 합니다.
 
방법 1:
편집/etc/ld.so.conf 파일, 새 줄에 라이브러리 파일이 있는 디렉터리 추가하기;
/etc/ld를 업데이트하기 위해ldconfig를 실행합니다.so.cache 파일;
방법 2:
/etc/ld.so.conf.d/디렉토리에 새로 만들기.conf는 접두사 파일로 이 파일에 라이브러리 파일이 있는 디렉터리를 추가합니다.
/etc/ld를 업데이트하기 위해ldconfig를 실행합니다.so.cache 파일;
 
본인은 두 번째 방법이 더욱 편리하고 원 시스템의 변동에 대해 가장 적다고 생각합니다./etc/ld 때문에.so.conf 파일의 내용은include/etc/ld입니다.so.conf.d/*.conf.그래서/etc/ld.so.conf.d/디렉터리에 추가된 모든 것.conf가 접두사인 파일은 모두 식별할 수 있습니다.
 
본인의 작법:
1.  /usr/loca/lib;  

2.  /etc/ld.so.conf.d/ usr-libs.conf, :/usr/local/lib  

3. #sudo ldconfig

ld.so.cache의 업데이트는 점차적으로 증가합니다. PATH 시스템 환경 변수처럼 처음부터 다시 세우는 것이 아니라 위로 누적됩니다.
다시 켜지 않으면, 0부터ld를 세울 수 있습니다.so.cache 파일.

좋은 웹페이지 즐겨찾기