欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

淺談Linux中l(wèi)dconfig和ldd的用法

 更新時(shí)間:2016年12月16日 09:21:49   投稿:jingxian  
下面小編就為大家?guī)?lái)一篇淺談Linux中l(wèi)dconfig和ldd的用法。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧

ldd 查看程序依賴(lài)庫(kù)

ldd

作用:用來(lái)查看程式運(yùn)行所需的共享庫(kù),常用來(lái)解決程式因缺少某個(gè)庫(kù)文件而不能運(yùn)行的一些問(wèn)題。

示例:查看test程序運(yùn)行所依賴(lài)的庫(kù):

/opt/app/todeav1/test$ldd test
libstdc++.so.6 => /usr/lib64/libstdc++.so.6 (0x00000039a7e00000)
libm.so.6 => /lib64/libm.so.6 (0x0000003996400000)
libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00000039a5600000)
libc.so.6 => /lib64/libc.so.6 (0x0000003995800000)
/lib64/ld-linux-x86-64.so.2 (0x0000003995400000)

•第一列:程序需要依賴(lài)什么庫(kù)

•第二列: 系統(tǒng)提供的與程序需要的庫(kù)所對(duì)應(yīng)的庫(kù)

•第三列:庫(kù)加載的開(kāi)始地址

通過(guò)上面的信息,我們可以得到以下幾個(gè)信息:

1.通過(guò)對(duì)比第一列和第二列,我們可以分析程序需要依賴(lài)的庫(kù)和系統(tǒng)實(shí)際提供的,是否相匹配

2.通過(guò)觀察第三列,我們可以知道在當(dāng)前的庫(kù)中的符號(hào)在對(duì)應(yīng)的進(jìn)程的地址空間中的開(kāi)始位置

如果依賴(lài)的某個(gè)庫(kù)找不到,通過(guò)這個(gè)命令可以迅速定位問(wèn)題所在;

注解

原理: ldd不是個(gè)可執(zhí)行程式,而只是個(gè)shell腳本; ldd顯示可執(zhí)行模塊的dependency的工作原理,其實(shí)質(zhì)是通過(guò)ld-linux.so(elf動(dòng)態(tài)庫(kù)的裝載器)來(lái)實(shí)現(xiàn)的。ld-linux.so模塊會(huì)先于executable模塊程式工作,并獲得控制權(quán),因此當(dāng)上述的那些環(huán)境變量被設(shè)置時(shí),ld-linux.so選擇了顯示可執(zhí)行模塊的dependency。

--------------------------------------------------------------

ldconfig是一個(gè)動(dòng)態(tài)鏈接庫(kù)管理命令,為了讓動(dòng)態(tài)鏈接庫(kù)為系統(tǒng)所共享,還需運(yùn)行動(dòng)態(tài)鏈接庫(kù)的管理命令–ldconfig。 ldconfig 命令的用途,主要是在默認(rèn)搜尋目錄(/lib和/usr/lib)以及動(dòng)態(tài)庫(kù)配置文件/etc/ld.so.conf內(nèi)所列的目錄下,搜索出可共享的動(dòng)態(tài) 鏈接庫(kù)(格式如前介紹,lib*.so*),進(jìn)而創(chuàng)建出動(dòng)態(tài)裝入程序(ld.so)所需的連接和緩存文件.緩存文件默認(rèn)為 /etc/ld.so.cache,此文件保存已排好序的動(dòng)態(tài)鏈接庫(kù)名字列表.

linux下的共享庫(kù)機(jī)制采用了類(lèi)似于高速緩存的機(jī)制,將庫(kù)信息保存在/etc/ld.so.cache里邊。

程序連接的時(shí)候首先從這個(gè)文件里邊查找,然后再到ld.so.conf的路徑里邊去詳細(xì)找。

這就是為什么修改了ld.so.conf要重新運(yùn)行一下ldconfig的原因

補(bǔ)充一點(diǎn),ldconfig在/sbin里面。

ldconfig幾個(gè)需要注意的地方

1. 往/lib和/usr/lib里面加?xùn)|西,是不用修改/etc/ld.so.conf的,但是完了之后要調(diào)一下ldconfig,不然這個(gè)library會(huì)找不到

2. 想往上面兩個(gè)目錄以外加?xùn)|西的時(shí)候,一定要修改/etc/ld.so.conf,然后再調(diào)用ldconfig,不然也會(huì)找不到

比如安裝了一個(gè)mysql到/usr/local/mysql,mysql有一大堆library在/usr/local/mysql /lib下面,這時(shí) 就需要在/etc/ld.so.conf下面加一行/usr/local/mysql/lib,保存過(guò)后ldconfig一下,新的library才能在 程序運(yùn)行時(shí)被找到。

3. 如果想在這兩個(gè)目錄以外放lib,但是又不想在/etc/ld.so.conf中加?xùn)|西(或者是沒(méi)有權(quán)限加?xùn)|西)。那也可以,就是export一個(gè)全局變 量LD_LIBRARY_PATH,然后運(yùn)行程序的時(shí)候就會(huì)去這個(gè)目錄中找library。一般來(lái)講這只是一種臨時(shí)的解決方案,在沒(méi)有權(quán)限或臨時(shí)需要的時(shí) 候使用。

4. ldconfig做的這些東西都與運(yùn)行程序時(shí)有關(guān),跟編譯時(shí)一點(diǎn)關(guān)系都沒(méi)有。編譯的時(shí)候還是該加-L就得加,不要混淆了。

5. 總之,就是不管做了什么關(guān)于library的變動(dòng)后,最好都ldconfig一下,不然會(huì)出現(xiàn)一些意想不到的結(jié)果。不會(huì)花太多的時(shí)間,但是會(huì)省很多的事。

以上這篇淺談Linux中l(wèi)dconfig和ldd的用法就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • LuManager Linux/Unix服務(wù)器管理面板推薦之國(guó)產(chǎn)面板

    LuManager Linux/Unix服務(wù)器管理面板推薦之國(guó)產(chǎn)面板

    國(guó)外VPS 大多數(shù)是 Linux /Unix平臺(tái),Linux/Unix平臺(tái)的優(yōu)點(diǎn)也很多,重點(diǎn)是它還是免費(fèi)的,(用過(guò)美國(guó)VPS 的朋友都知道國(guó)外IDC 裝Windows是需要版權(quán)費(fèi)的)國(guó)內(nèi)大型網(wǎng)站幾乎都是用Linux/Unix平臺(tái)
    2012-09-09
  • Win10 安裝Linux ubuntu-18.04雙系統(tǒng)(安裝指南)

    Win10 安裝Linux ubuntu-18.04雙系統(tǒng)(安裝指南)

    這篇文章主要介紹了Win10+Linux ubuntu-18.04雙系統(tǒng)安裝教程,本文分步驟給大家記錄下來(lái),需要的朋友可以參考下
    2019-10-10
  • CentOS平臺(tái)實(shí)現(xiàn)搭建rsync遠(yuǎn)程同步服務(wù)器的方法

    CentOS平臺(tái)實(shí)現(xiàn)搭建rsync遠(yuǎn)程同步服務(wù)器的方法

    這篇文章主要介紹了CentOS平臺(tái)實(shí)現(xiàn)搭建rsync遠(yuǎn)程同步服務(wù)器的方法,較為詳細(xì)的分析了CentOS搭建rsync遠(yuǎn)程同步服務(wù)器的具體步驟、相關(guān)命令與注意事項(xiàng),需要的朋友可以參考下
    2018-04-04
  • linux服務(wù)器CPU飆高排查分析

    linux服務(wù)器CPU飆高排查分析

    系統(tǒng)cpu飆高,尤其對(duì)于后端人員來(lái)說(shuō),其實(shí)應(yīng)該學(xué)會(huì)排查,這樣也算是綜合能力的體現(xiàn);那么當(dāng)出現(xiàn)了cpu嚴(yán)重飆高的時(shí)候怎么排查呢?感興趣的朋友跟隨小編一起看看吧
    2023-01-01
  • Apache POI簡(jiǎn)介及應(yīng)用場(chǎng)景

    Apache POI簡(jiǎn)介及應(yīng)用場(chǎng)景

    Apache POI 是一個(gè)處理Miscrosoft Office各種文件格式的開(kāi)源項(xiàng)目,我們可以使用POI在Java程序中對(duì)Miscrosoft Office各種文件進(jìn)行讀寫(xiě)操作,本文給大家介紹Apache POI簡(jiǎn)介,感興趣的朋友一起看看吧
    2023-11-11
  • linux Centos7斷網(wǎng)下安裝應(yīng)用程序詳解

    linux Centos7斷網(wǎng)下安裝應(yīng)用程序詳解

    在本篇文章里小編給大家整理的是關(guān)于linux最新版本Centos7,斷網(wǎng)情況下安裝應(yīng)用程序相關(guān)步驟,需要的朋友們可以學(xué)習(xí)下。
    2019-08-08
  • centos源碼編譯php5 mcrypt模塊步驟詳解

    centos源碼編譯php5 mcrypt模塊步驟詳解

    服務(wù)器安裝的是php5.3版本,源中沒(méi)有包含mcrypt擴(kuò)展,只有自己從源碼中編譯mcrypt模塊了,看下面的詳細(xì)步驟
    2013-12-12
  • Linux下非交互式提權(quán)詳解

    Linux下非交互式提權(quán)詳解

    這篇文章主要介紹了Linux下非交互式提權(quán)的相關(guān)資料,文中介紹的非常詳細(xì),對(duì)大家具有一定的參考價(jià)值,需要的朋友們下面來(lái)一起看看吧。
    2017-03-03
  • 動(dòng)態(tài)庫(kù)調(diào)用靜態(tài)庫(kù)示例講解

    動(dòng)態(tài)庫(kù)調(diào)用靜態(tài)庫(kù)示例講解

    一個(gè)應(yīng)用程序調(diào)用動(dòng)態(tài)庫(kù), 而這個(gè)動(dòng)態(tài)庫(kù)其中的函數(shù)調(diào)用某靜態(tài)庫(kù)時(shí),如何生成應(yīng)用程序呢?看下面的代碼就明白了
    2013-12-12
  • 詳解Linux查看實(shí)時(shí)網(wǎng)卡流量的幾種方式

    詳解Linux查看實(shí)時(shí)網(wǎng)卡流量的幾種方式

    本篇文章中主要介紹了詳解Linux查看實(shí)時(shí)網(wǎng)卡流量的幾種方式,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-05-05

最新評(píng)論