深入探索 Linux 的心脏:全面了解 /usr 目录及其重要性
今天这篇文章小编带小伙伴们了解下在 Linux 系统中的 /usr 目录。它是系统的核心部分之一。它不仅承载着大量的用户程序、库文件和共享数据,更是我们与操作系统交互的主要桥梁。不论你是 Linux 新手还是资深用户,了解 /usr 的秘密都将助你更好地驾驭这个强大的操作系统。/usr 可不是 user 的缩写,其实 usr 是 Unix Software Resource 的缩写, 也就是Unix操作系统软件资源所放置的目录,而不是用户的数据;所有系统默认的软件都会放置到 /usr, 系统安装完时,这个目录会占用最多的硬盘容量。- 用途:/usr 目录用于存放与用户相关的程序、库、文档以及其他文件。它通常包含系统上大多数用户级应用程序和共享数据。
- 只读:在某些 Linux 发行版中,/usr 目录可以被设置为只读,特别是在使用 initramfs 启动时,这样可以提高系统的安全性。
- 存放大多数用户命令的可执行文件。这里的二进制文件通常是用户日常使用的命令。
- 常见命令如c++、g++、gcc、chdrv、diff、dig、du、eject、elm 、free、gnome*、 zip、htpasswd、kfm、ktop、last、less、locale、m4、make、man、mcopy、ncftp、 newaliases、nslookup passwd、quota、smb*、wget等。
- 存放系统管理命令的可执行文件,这些命令通常需要超级用户权限才能运行。
- 例如,网络管理工具和服务管理工具(如dhcpd、httpd、imap、in.*d、inetd、lpd、named、netconfig、nmbd、samba、sendmail、squid、swap、tcpd、tcpdump等)通常在此目录中。
- 存放与 /usr/bin 和 /usr/sbin 中的可执行文件关联的共享库文件。
- 这些库文件为应用程序提供必需的支持,使它们能够运行。
- 存放 C 语言的头文件,开发人员在编写程序时会引用这些文件。
- 存放与架构无关的数据文件,通常包括文档、配置文件、图标、字体等。
- 例如,/usr/share/doc 存放软件包的文档,/usr/share/man 存放手册页。
- 用于存放本地安装的软件和数据,通常是用户自定义安装的程序,不依赖于系统的包管理器。
- 这个目录的结构与 /usr 类似,包含 bin、lib、share 等子目录。
- 存放内核源代码和其他源代码包,通常用于开发和编译自定义的内核或软件。
- 例如,/usr/src/linux 是内核源代码的常见位置。
- 存放游戏程序,虽然现代系统中这个目录的使用相对较少。
细心的小伙伴会发现 /usr目录下的bin和sbin,都是存放二进制文件的目录,但是根据上面的讲解,可以看出一个是普通用户常用的,一个是超级用户用的,但是在系统根目录下,还有相同的目录分别是 /bin、/sbin,它俩是什么呢?bin为binary的简写主要放置一些系统的必备执行档例如:cat、cp、chmod df、dmesg、gzip、kill、ls 、mkdir、more、mount、rm、su、tar等。主要放置一些系统管理的必备程序例如:cfdisk、dhcpcd、dump、e2fsck、fdisk、halt、ifconfig、ifup、 ifdown、init 、insmod、lilo、lsmod、mke2fs、modprobe、quotacheck、reboot、rmmod、 runlevel、shutdown等。/usr 目录在 Linux 系统中扮演着至关重要的角色,包含了许多用户程序和库文件,是用户与系统交互的主要接口之一。理解 /usr 目录及其子目录的结构和用途有助于更好地管理 Linux 系统和进行软件开发。