>  기사  >  리눅스에서 lib 디렉토리는 무엇입니까?

리눅스에서 lib 디렉토리는 무엇입니까?

青灯夜游
青灯夜游원래의
2023-02-28 18:21:556881검색

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

리눅스에서 lib 디렉토리는 무엇입니까?

이 튜토리얼의 운영 환경: linux7.3 시스템, Dell G3 컴퓨터.

Linux의 /lib 폴더는 무엇인가요? /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는 Library(라이브러리)의 약자로 시스템의 가장 기본적인 동적 링크 공유 라이브러리를 저장하는 디렉터리로, 그 기능은 Windows의 DLL 파일과 유사합니다. 거의 모든 애플리케이션에는 이러한 공유 라이브러리를 사용해야 합니다.
/lib 폴더는 시스템에 유용한 모든 라이브러리 파일이 포함된 라이브러리 파일 디렉터리입니다. 간단히 말해서 응용 프로그램, 명령 또는 프로세스를 올바르게 실행하는 데 필요한 파일입니다. /bin 또는 /sbin 디렉터리의 명령에 대한 동적 라이브러리 파일은 이 디렉터리에 있습니다. 커널 모듈도 여기에 있습니다.

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 둘 폴더 code> 및 <code>/lib64🎜🎜에는 특별히 구조화된 라이브러리 파일이 포함되어 있습니다. 아키텍처 수준의 차이점을 제외하면 /lib 폴더와 거의 동일합니다. 🎜🎜🎜Linux 기타 라이브러리 파일🎜
  • 🎜/usr/lib - 모든 소프트웨어 라이브러리가 설치되어 있습니다. 이다. 단, 시스템 기본 라이브러리 파일과 커널 라이브러리 파일은 포함되지 않습니다. 🎜🎜
  • 🎜/usr/local/lib - 추가 시스템 파일을 배치합니다. 이러한 라이브러리는 다양한 애플리케이션에서 사용될 수 있습니다. 🎜🎜
  • 🎜/var/lib - rpm/dpkg 데이터 및 게임 로그와 같은 동적 데이터를 저장하는 라이브러리 및 파일입니다. 🎜🎜🎜🎜관련 추천: "🎜Linux 비디오 튜토리얼🎜"🎜

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

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.