Maison  >  Article  >  Quel est le répertoire de lib sous Linux ?

Quel est le répertoire de lib sous Linux ?

青灯夜游
青灯夜游original
2023-02-28 18:21:556858parcourir

Sous Linux, lib est le répertoire des fichiers de bibliothèque, qui contient tous les fichiers de bibliothèque utiles au système ; les fichiers de bibliothèque sont des fichiers nécessaires à l'exécution correcte des applications, des commandes ou des processus. Le rôle de lib est similaire au fichier DLL sous Windows. Presque toutes les applications doivent utiliser les fichiers de bibliothèque partagés dans le répertoire lib.

Quel est le répertoire de lib sous Linux ?

L'environnement d'exploitation de ce tutoriel : système linux7.3, ordinateur Dell G3.

Qu'est-ce que le dossier /lib sous 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

    lib est l'abréviation de Library (bibliothèque). Ce répertoire stocke la bibliothèque partagée de liens dynamiques la plus basique du système, et sa fonction est similaire au fichier DLL de Windows. Presque toutes les applications nécessitent ces bibliothèques partagées.
Le dossier /lib est le répertoire des fichiers de bibliothèque, qui contient tous les fichiers de bibliothèque utiles au système. En termes simples, il s'agit d'un fichier nécessaire à l'exécution correcte d'une application, d'une commande ou d'un processus. Les fichiers de bibliothèque dynamique pour les commandes des répertoires /bin ou /sbin se trouvent dans ce répertoire. Les modules du noyau sont également ici.

Prenons l'exécution de la commande pwd comme exemple. Son exécution nécessite l'appel de certains fichiers de bibliothèque. Explorons ce qui se passe lorsque la commande pwd est exécutée. Nous devons utiliser la commande strace pour savoir quels fichiers de bibliothèque sont appelés.

Exemple : 🎜rrreee🎜Si vous remarquez, vous constaterez que l'exécution de la commande pwd que nous utilisons nécessite l'appel de deux fichiers de bibliothèque. 🎜🎜🎜🎜Informations internes du dossier /lib sous Linux🎜🎜Comme mentionné précédemment, ce dossier contient des fichiers cibles et des fichiers de bibliothèque Si vous pouvez comprendre cela, certains sont importants. les sous-fichiers du dossier doivent être excellents. Les informations répertoriées ci-dessous sont basées sur mon propre système et peuvent être différentes pour le vôtre. 🎜rrreee🎜/lib/firmware - Ce dossier contient du code matériel et firmware. 🎜🎜🎜Quelle est la différence entre le matériel et le firmware ? 🎜🎜Pour que le matériel fonctionne correctement, de nombreux logiciels d'appareils se composent de deux parties logicielles. La partie du code chargée dans le matériel réel est le micrologiciel, et le logiciel utilisé pour communiquer entre le micrologiciel et le noyau est appelé pilote. Cela permet au noyau de communiquer directement avec le matériel et de garantir que le matériel accomplit le travail assigné par le noyau. 🎜🎜🎜/lib/modprobe.d - Le répertoire de configuration de la commande modprobe. 🎜🎜/lib/modules - Tous les modules chargeables du noyau sont stockés dans ce répertoire. Si vous avez plusieurs noyaux, vous verrez un répertoire sous ce répertoire représentant le noyau américain. 🎜🎜/lib/hdparm - Contient les paramètres pour le bon fonctionnement des disques durs SATA/IDE. 🎜🎜/lib/udev - Espace utilisateur /dev est le gestionnaire de périphériques du noyau Linux. Ce dossier contient tous les fichiers et dossiers liés à udev. Par exemple, Rules.d contient le fichier de spécification udev. 🎜🎜🎜🎜Connaissances étendues :🎜🎜🎜Le dossier sœur de/lib :🎜/lib32 Les deux les dossiers code> et <code>/lib64🎜🎜 contiennent des fichiers de bibliothèque spécialement structurés. Ils sont presque identiques au dossier /lib, à l'exception des différences de niveau d'architecture. 🎜🎜🎜Autres fichiers de bibliothèque Linux🎜
  • 🎜/usr/lib - toutes les bibliothèques de logiciels sont installées Ici est. Cependant, les fichiers de bibliothèque par défaut du système et les fichiers de bibliothèque du noyau ne sont pas inclus. 🎜🎜
  • 🎜/usr/local/lib - Placez des fichiers système supplémentaires. Ces bibliothèques peuvent être utilisées dans diverses applications. 🎜🎜
  • 🎜/var/lib - Bibliothèques et fichiers qui stockent des données dynamiques, telles que les données rpm/dpkg et les journaux de jeu. 🎜🎜🎜🎜Recommandations associées : "🎜Tutoriel vidéo Linux🎜"🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn