浅蓝色 [l] 软链接
白色 [-] 普通文件/硬链接
蓝色 [d] 目录
红色 [l] 某文件被删除后,链接到该文件的软链接的颜色
红色闪烁 无 表示该文件已被删除,但还存在该文件的软链接
红色 [-] 压缩包
黄色 [c] 字符设备文件,如键盘鼠标
绿色 [-] 可执行文件,可执行的程序
桃红色 [s] 套接字文件
土黄色 [p] 管道文件
灰色文件 表示其它文件
1、/bin
bin 是 Binaries (二进制文件) 的缩写, 这个目录存放着最经常使用的命令。比如像“ls”、“vi”
2、/boot
这里存放的是启动 Linux 时使用的一些核心文件,包括一些连接文件以及镜像文件。
/boot目录通常包含静态文件,因此它不需要经常写入,这有助于减少该分区的磨损。
config-X.Y.Z-ABC-generic
这些是内核配置文件,其中X.Y.Z
是内核版本号,而ABC
是该版本的一个特定构建或修订号。这些文件包含了内核编译时所使用的配置选项和参数。
initrd.img-X.Y.Z-ABC-generic
这些是初始RAM磁盘(initrd)镜像文件。initrd是在内核加载后但在根文件系统挂载之前加载的一个小文件系统。它通常包含驱动程序和其他代码,这些代码在根文件系统(如ext4)可用之前需要运行。
memtest86+.elf
和 memtest86+.bin
这些是内存测试工具的版本,用于在系统启动过程中检查RAM中的错误。memtest86+
是一个流行的内存测试工具。
memtest86+_multiboot.bin
这也是memtest86+
的一个版本,但它是为使用Multiboot规范的系统设计的。Multiboot是一种用于引导多个操作系统的规范。
System.map-X.Y.Z-ABC-generic
这些文件包含了内核符号和地址的映射,通常用于调试目的。它们帮助程序员将内核中的地址转换为人类可读的符号名称。
vmlinuz-X.Y.Z-ABC-generic
这些是压缩的内核映像文件。vmlinuz
是“vmlinux”的压缩版本,其中“vmlinux”是未经压缩的内核映像。这些文件包含了用于引导系统的实际内核代码。
3、dev
dev 是 Device(设备) 的缩写, 该目录下存放的是 Linux 的外部设备,在 Linux 中访问设备的方式和访问文件的方式是相同的。
4、/etc
etc 是 Etcetera(等等) 的缩写,这个目录用来存放所有的系统管理所需要的配置文件和子目录。
这里主要存放了系统配置方面的文件。举个例子:你安装了samba这个套件,当你想要修改samba配置文件的时候,你会发现它们(配置文件)就在/etc/samba目录下。
用户账户相关配置
/etc/passwd
此文件包含了系统上所有用户账户的信息。包括用户名、用户ID(UID)、用户所属的组ID(GID)、用户的家目录及默认Shell等。
/etc/shadow
此文件存储了用户的加密密码及与密码相关的安全策略。只有root用户有权读取,提高了用户密码的安全性。
/etc/group
此文件包含了系统上所有用户组的信息。包括组名、组ID(GID)及组成员。
网络配置
/etc/hosts
此文件用于映射主机名与IP地址之间的关系。可以手动添加或修改主机名与IP地址的映射关系,方便本地解析。
/etc/resolv.conf
此文件用于配置DNS服务器的信息。包括域名解析服务器的IP地址、搜索域等。
/etc/network/interfaces 或 /etc/sysconfig/network-scripts/ifcfg-<interface>
这些文件用于配置网络接口的信息。例如IP地址、子网掩码、网关等。
系统服务配置
/etc/ssh/
此目录包含了OpenSSH服务器的配置文件。用于设置SSH服务相关的参数和安全选项。
/etc/nginx/ 或 /etc/httpd/
这些目录包含了Nginx或Apache HTTP服务器的配置文件。用于配置Web服务器的行为。
软件包管理
/etc/apt/ 或 /etc/yum/
这些目录包含了使用APT或YUM进行软件包管理时所需的配置文件。如sources.list
或yum.repos.d/
目录下的.repo
文件,用于指定软件包的下载源。
系统环境配置
/etc/profile
全局环境变量配置文件,用于设置所有用户登录时都会加载的环境变量。
/etc/bashrc
bash shell的配置文件,定义了bash shell的行为和设置。
/etc/environment
主要用于设置系统级别的环境变量
与其他环境变量文件的区别
- 与
/etc/profile
的区别:/etc/profile
是一个 shell 脚本,可以包含编程逻辑和初始化命令。/etc/profile
通常用于执行更复杂的初始化命令和环境设置,并且是特定于 shell 登录会话的。- 修改
/etc/profile
后,新的登录会话会立即生效,而/etc/environment
修改后可能需要重新登录或重启系统。
- 与
~/.bashrc
、~/.bash_profile
等用户级文件的区别:- 这些文件通常用于为特定用户设置环境变量,而
/etc/environment
是系统级别的配置文件。
- 这些文件通常用于为特定用户设置环境变量,而
5、/home
用户的主目录,在 Linux 中,每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的,如上图中的 alice、bob 和 eve。
6、/lib
lib 是 Library(库) 的缩写这个目录里存放着系统最基本的动态连接共享库,提供了程序运行时所需的函数和数据。其作用类似于 Windows 里的 DLL 文件。几乎所有的应用程序都需要用到这些共享库。
- 例如,
/lib/x86_64-linux-gnu/libc.so.6
是一个常见的C标准库文件,它提供了C语言程序运行时所需的函数。
7、/tmp
tmp 是 temporary(临时) 的缩写这个目录是用来存放一些临时文件的。
8、/var
var 是 variable(变量) 的缩写,这个目录中存放着在不断扩充着的东西,我们习惯将那些经常被修改的目录放在这个目录下。包括各种日志文件。
这是一个非常重要的目录,系统上跑了很多程序,那么每个程序都会有相应的日志产生,而这些日志就被记录到这个目录下,具体在 /var/log 目录下,另外 mail 的预设放置也是在这里。
9、/usr
usr 是 unix shared resources(共享资源) 的缩写,这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于 windows 下的 program files 目录。
/bin, /sbin, /usr/bin, /usr/sbin: 这是系统预设的执行文件的放置目录,比如 ls 就是在 /bin/ls 目录下的。/bin、/usr/bin 是给系统用户使用的指令(除 root 外的通用用户),而/sbin, /usr/sbin 则是给 root 使用的指令。
。。。。。其他的后续补充。。。。。