歡迎光臨
每天分享高質量文章

Linux 目錄結構:/lib 分析 | Linux 中國

本文中,讓我們來看看 /lib 目錄都有些什麼。
— Surendra Anne


致謝
編譯自 | https://www.linuxnix.com/linux-directory-structure-lib-explained/ 
 作者 | Surendra Anne
 譯者 | ChenYi (cyleft) ? ? ? 共計翻譯:23 篇 貢獻時間:73 天

我們在之前的文章中已經分析了其他重要系統目錄,比如 /bin/boot/dev、 /etc 等。可以根據自己的興趣進入下列連結瞭解更多資訊。本文中,讓我們來看看 /lib目錄都有些什麼。

◈ 目錄結構分析:/bin 檔案夾[1]
◈ 目錄結構分析:/boot 檔案夾[2]
◈ 目錄結構分析:/dev 檔案夾[3]
◈ 目錄結構分析:/etc 檔案夾[4]
◈ 目錄結構分析:/lost+found 檔案夾[5]
◈ 目錄結構分析:/home 檔案夾[6]

Linux 中,/lib 檔案夾是什麼?

/lib 檔案夾是 庫檔案目錄 ,包含了所有對系統有用的庫檔案。簡單來說,它是應用程式、命令或行程正確執行所需要的檔案。在 /bin 或 /sbin 目錄中的命令的動態庫檔案正是在此目錄中。核心模組同樣也在這裡。

以 pwd 命令執行為例。執行它需要呼叫一些庫檔案。讓我們來探索一下 pwd 命令執行時都發生了什麼。我們需要使用 strace 命令[7] 找出呼叫的庫檔案。

示例:

  1. root@linuxnix:~# strace -e open pwd

  2. open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3

  3. open("/lib/x86_64-linux-gnu/libc.so.6", O_RDONLY|O_CLOEXEC) = 3

  4. open("/usr/lib/locale/locale-archive", O_RDONLY|O_CLOEXEC) = 3

  5. /root

  6. +++ exited with 0 +++

  7. root@linuxnix:~#

如果你註意到的話,會發現我們使用的 pwd 命令的執行需要呼叫兩個庫檔案。

Linux 中 /lib 檔案夾內部資訊

正如之前所說,這個檔案夾包含了標的檔案和一些庫檔案,如果能瞭解這個檔案夾的一些重要子檔案,想必是極好的。下麵列舉的內容是基於我自己的系統,對於你的來說,可能會有所不同。

  1. root@linuxnix:/lib# find . -maxdepth 1  -type d

  2. ./firmware

  3. ./modprobe.d

  4. ./xtables

  5. ./apparmor

  6. ./terminfo

  7. ./plymouth

  8. ./init

  9. ./lsb

  10. ./recovery-mode

  11. ./resolvconf

  12. ./crda

  13. ./modules

  14. ./hdparm

  15. ./udev

  16. ./ufw

  17. ./ifupdown

  18. ./systemd

  19. ./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 資料和遊戲記錄。


via: https://www.linuxnix.com/linux-directory-structure-lib-explained/

作者:Surendra Anne[9] 譯者:CYLeft 校對:wxy

本文由 LCTT 原創編譯,Linux中國 榮譽推出

贊(0)

分享創造快樂