>  기사  >  운영 및 유지보수  >  리눅스에서 lib는 무엇을 의미하나요?

리눅스에서 lib는 무엇을 의미하나요?

WBOY
WBOY앞으로
2023-05-23 19:20:114132검색

Linux에서 lib는 시스템에 유용한 모든 라이브러리 파일이 포함된 라이브러리 파일 디렉터리입니다. 라이브러리 파일은 응용 프로그램, 명령 또는 프로세스를 올바르게 실행하는 데 필요한 파일입니다. 거의 모든 응용 프로그램에서는 Windows의 DLL 파일과 유사하게 작동하는 lib 디렉터리에 있는 공유 라이브러리 파일을 사용해야 합니다.

lib는 Library의 약어입니다. 이 디렉토리에는 시스템의 가장 기본적인 동적 링크 공유 라이브러리가 저장되어 있으며 그 기능은 Windows의 DLL 파일과 유사합니다. 거의 모든 애플리케이션에는 이러한 공유 라이브러리가 필요합니다.

/lib 폴더는 시스템에 유용한 모든 라이브러리 파일이 포함된 라이브러리 파일 디렉터리입니다. 간단히 말해서 응용 프로그램, 명령 또는 프로세스를 올바르게 실행하는 데 필요한 파일입니다. /bin 또는 /sbin 디렉터리의 명령에 대한 동적 라이브러리 파일은 이 디렉터리에 있습니다. 커널 모듈도 여기에 있습니다. /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

    pwd 명령 실행을 예로 들어 보겠습니다. 이를 실행하려면 일부 라이브러리 파일을 호출해야 합니다. pwd 명령이 실행될 때 어떤 일이 발생하는지 살펴보겠습니다. 어떤 라이브러리 파일이 호출되는지 확인하려면 strace 명령을 사용해야 합니다.
예: 🎜rrreee🎜알고 계시다면 우리가 사용하는 pwd 명령을 실행하려면 두 개의 라이브러리 파일을 호출해야 한다는 것을 알게 될 것입니다. 🎜🎜Linux의 /lib 폴더 내부 정보🎜🎜앞서 언급했듯이 이 폴더에는 타겟 파일과 일부 라이브러리 파일이 포함되어 있습니다. 중요한 하위 파일은 우수해야 합니다. 아래 나열된 정보는 내 시스템을 기반으로 하며 귀하의 시스템에 따라 다를 수 있습니다. 🎜rrreee🎜/lib/firmware - 이 폴더에는 일부 하드웨어 및 펌웨어 코드가 포함되어 있습니다. 🎜🎜🎜하드웨어와 펌웨어의 차이점은 무엇인가요? 🎜🎜하드웨어가 제대로 실행되기 위해 많은 장치 소프트웨어는 두 가지 소프트웨어 부분으로 구성됩니다. 펌웨어는 실제 하드웨어에 로드되는 코드 부분을 의미하며, 펌웨어와 커널 간의 통신에 사용되는 소프트웨어를 드라이버라고 합니다. 이를 통해 커널은 하드웨어와 직접 통신할 수 있으며 하드웨어가 커널의 지침에 따라 작업을 수행하는지 확인할 수 있습니다. 🎜🎜🎜/lib/modprobe.d - modprobe 명령의 구성 디렉터리입니다. 🎜🎜/lib/modules - 로드 가능한 모든 커널 모듈이 이 디렉터리에 저장됩니다. 커널이 여러 개인 경우 이 디렉터리 아래에 미국 커널을 나타내는 디렉터리가 표시됩니다. 🎜🎜/lib/hdparm - SATA/IDE 하드 드라이브의 올바른 작동을 위한 매개변수가 포함되어 있습니다. 🎜🎜/lib/udev - 사용자 공간 /dev는 Linux 커널 장치 관리자입니다. 이 폴더에는 udev 관련 파일과 폴더가 모두 포함되어 있습니다. 예를 들어,rules.d에는 udev 사양 파일이 포함되어 있습니다. 🎜🎜확장된 지식:🎜🎜/lib의 자매 폴더: /lib32/lib64 Strong>🎜🎜이 두 폴더에는 특별히 구조화된 라이브러리 파일이 들어 있습니다. 아키텍처 수준의 차이점을 제외하면 /lib 폴더와 거의 동일합니다. 🎜🎜Linux 기타 라이브러리 파일🎜
  • 🎜/usr/lib - 모든 소프트웨어 라이브러리가 여기에 설치됩니다. 단, 시스템 기본 라이브러리 파일과 커널 라이브러리 파일은 포함되지 않습니다. 🎜🎜
  • 🎜/usr/local/lib - 추가 시스템 파일을 배치합니다. 이러한 라이브러리는 다양한 애플리케이션에서 사용될 수 있습니다. 🎜🎜
  • 🎜/var/lib - rpm/dpkg 데이터 및 게임 로그와 같은 동적 데이터를 저장하는 라이브러리 및 파일입니다. 🎜🎜🎜

위 내용은 리눅스에서 lib는 무엇을 의미하나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 yisu.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제