在linux中,lib是函式庫檔案目錄,包含了所有對系統有用的函式庫檔案;函式庫檔案是應用程式、指令或程式正確執行所需的檔案。 lib的作用類似Windows裡的DLL文件,幾乎所有的應用程式都需要用到lib目錄裡的共用函式庫檔案。
本教學操作環境:linux7.3系統、Dell G3電腦。
Linux 中,/lib
資料夾是什麼?
lib 是 Library(函式庫) 的縮寫這個目錄裡存放著系統最基本的動態連線共享函式庫,其作用類似 Windows 裡的 DLL 檔案。幾乎所有的應用程式都需要用到這些共享庫。
/lib
資料夾是 庫檔案目錄 ,包含了所有對系統有用的庫檔案。簡單來說,它是應用程式、命令或進程正確執行所需的檔案。在 /bin
或 /sbin
目錄中的指令的動態庫檔案正是在此目錄中。內核模組同樣也在這裡。
以 pwd 指令執行為例。執行它需要調用一些庫文件。讓我們來探索一下 pwd 指令執行時都發生了什麼事。我們需要使用 strace 指令 找出呼叫的函式庫檔案。
範例:
root@linuxnix:~# strace -e open pwd open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3 open("/lib/x86_64-linux-gnu/libc.so.6", O_RDONLY|O_CLOEXEC) = 3 open("/usr/lib/locale/locale-archive", O_RDONLY|O_CLOEXEC) = 3 /root +++ exited with 0 +++ root@linuxnix:~#
如果你注意到的話,會發現我們使用的 pwd 指令的執行需要呼叫兩個函式庫檔案。
Linux 中/lib
資料夾內部資訊
#正如之前所說,這個資料夾包含了目標文件和一些函式庫文件,如果能了解這個資料夾的一些重要子文件,想必是極好的。下面列舉的內容是基於我自己的系統,對你的來說,可能會有所不同。
root@linuxnix:/lib# find . -maxdepth 1 -type d ./firmware ./modprobe.d ./xtables ./apparmor ./terminfo ./plymouth ./init ./lsb ./recovery-mode ./resolvconf ./crda ./modules ./hdparm ./udev ./ufw ./ifupdown ./systemd ./modules-load.d
/lib/firmware
- 這個資料夾包含了一些硬體、韌體(Firmware)程式碼。
硬體和韌體之間有什麼不同?
為了讓硬體正常運作,許多裝置軟體由兩部分軟體組成。載入到實際硬體的程式碼部分是韌體,用於在韌體和核心之間通訊的軟體被稱為驅動程式。這樣一來,核心就可以直接與硬體通訊,並確保硬體完成核心指派的工作。
/lib/modprobe.d
- modprobe 指令的設定目錄。
/lib/modules
- 所有的可載入核心模組都儲存在這個目錄下。如果你有多個內核,你會在這個目錄下看到代表美國內核的目錄。
/lib/hdparm
- 包含 SATA/IDE 硬碟正確運作的參數。
/lib/udev
- 使用者空間 /dev 是 Linux 核心裝置管理員。這個資料夾包含了所有的 udev 相關的檔案和資料夾,例如 rules.d 包含了 udev 規格文件。
擴充知識:
#/lib 的姊妹資料夾:/ lib32
和/lib64
這兩個資料夾包含了特殊結構的函式庫檔案。它們幾乎和 /lib
資料夾一樣,除了架構層級的差異。
Linux 其他的函式庫檔案
#/usr/lib
- 所有軟體的函式庫都安裝在這裡。但是不包含系統預設庫檔案和核心庫檔案。
/usr/local/lib
- 放置額外的系統檔案。這些庫能夠用於各種應用。
/var/lib
- 儲存動態資料的函式庫和文件,例如 rpm/dpkg
資料和遊戲記錄。
相關推薦:《Linux影片教學》
以上是linux中的lib是什麼目錄的詳細內容。更多資訊請關注PHP中文網其他相關文章!