1. 程式人生 > >locate strace 解決無法找到檔案的問題,比如: error while loading shared libraries: libiconv.so.2

locate strace 解決無法找到檔案的問題,比如: error while loading shared libraries: libiconv.so.2


使用locate的快速查詢檔案功能。

locate功能簡介,locate將檔名及路徑儲存在資料庫/var/lib/mlocate/mlocate.db之中,方便快速查詢文
件位置。正常情況下這個資料庫是不會更新的,我們需要使用命令updatedb這個命令來更新。

shell> updatedb

然後locate libiconv.so.2,發現該庫已經安裝,位置在/usr/local/lib/libiconv.so.2

既然已經安裝,為什麼提示找不到那?繼續下一步排查

2、是否是路徑錯了?確認zabbix_server啟動時查詢的路徑

strace ./indexer 將打印出所有indexer 啟動時呼叫的檔案及程式名稱,

在輸出的資訊中發現查詢庫libiconv.so.2的路徑是/lib目錄和/usr/lib這兩個目錄

好了,問題找到了,將/usr/local/lib下面該庫連結到/usr/lib下面即可,程式碼

shell> ln -s /usr/local/lib/libiconv.so.2 /usr/lib/libiconv.so.2