linux 常用目录和文件说明

环境信息

  • Centos 7

常用目录和文件说明

etc 目录常用文件说明

文件路径 说明 示例
/etc/motd 登录成功后的欢迎信息,ssh 登录和 console 登录成功后都会显示
/etc/issue 在登录系统输入用户名之前显示的信息,远程 ssh 连接的时候并不会显示此信息 说明示例
/etc/services 记录网络服务名和它们对应使用的端口号及协议
/etc/protocols 该文件是网络协议定义文件,里面记录了 TCP/IP 协议族的所有协议类型。文件中的每一行对应一个协议类型,它有3个字段,分别表示 协议名称协议号协议别名
/etc/vimrc
~/.vimrc
vim 启动时会读取 /etc/vimrc(全局配置) 和 ~/.vimrc (用户配置) vim
/etc/passwd
/etc/shadow
/etc/group
用户数据库,其中记录了 用户名id用户家目录shell
用户密码文件
组信息
/etc/fstab 系统启动时需要自动挂载的文件系统列表
/etc/mtab 当前系统已挂载的文件系统,并由 mount 命令自动更新。当需要当前挂载的文件系统的列表时使用(例如df命令)
/etc/shells 系统可使用的 shell
/etc/filesystems 系统可使用的 文件系统
/etc/hostname 存放这主机名
/etc/hosts 主机名查询静态表,域名和 ip 本地静态表
/etc/nsswitch.conf 它规定通过哪些途径以及按照什么顺序以及通过这些途径来查找特定类型的信息,还可以指定某个方法奏效或失效时系统将采取什么动作 hosts: files dns myhostname
此配置设定:在查找域名解析的时候,先查找本地 /etc/hosts,再发送给 DNS 服务器查询
/etc/rsyslog.conf rsyslog 服务的配置文件,用来托管其他服务的日志 linux rsyslog 服务
/etc/logrotate.conf linux 日志切割工具 linux logrotate 服务
/etc/rsyncd.conf rsync 服务的配置文件 rsyncd 服务
/etc/sysctl.conf
/etc/sysctl.d/
内核的运行参数配置文件,sysctl 命令对内核参数的修改仅在当前生效,重启系统后参数丢失,如果希望参数永久生效可以修改此配置文件 Linux 常用内核参数说明

/usr/src/

/usr/src/ 目录下面一般会放置 Linux 发行版所使用的 内核源代码,具体路径可能类似 /usr/src/kernels/3.10.0-1160.11.1.el7.x86_64

/proc/ 目录

/proc/ 目录是一个 虚假的(pseudo) 的仅存在于内存中的文件系统, 存储了系统运行时的状态信息。大多数检测系统运行指标的工具(如 topvmstat 等)都是从此目录中读取统计数据。

文件路径 说明 示例
/proc/cmdline 存储了系统启动时使用的内核及选项(参数)
BOOT_IMAGE 是系统加载的内核镜像
rootroot file system 的 UID
# cat /proc/cmdline
BOOT_IMAGE=/boot/vmlinuz-6.8.9-1.el7.elrepo.x86_64 root=UUID=44a6a613-4e21-478b-a909-ab653c9d39df ro console=tty0 crashkernel=auto net.ifnames=0 console=ttyS0
/proc/<PID>/cmdline 存储了程启动时的命令行参数。ps 命令显示的 command 内容来自此处 # cat /proc/1/cmdline
/usr/lib/systemd/systemd --switched-root --system--deserialize 21
/proc/<PID>/comm 存储了进程的名称,一般为进程启动的 文件名,如 systemd
/proc/<PID>/status 进程的详细状态信息,包括进程的基本属性、内存使用情况、权限和调度策略等

/proc/<PID>/status 记录内容

记录字段 说明 示例
voluntary_ctxt_switches
nonvoluntary_ctxt_switches
Context Switch 的次数,包括 voluntarynonvoluntary 类型的 Context Switch

说明示例

/etc/issue

文件内容可使用的各个变量说明如下

变量 说明
\d 显示当前日期
\l 显示虚拟控制台号
\m 显示机器类型,即 CPU 架构,如 i386 或 x86_64 等(相当于 uname -m)
\n 显示主机的网络名(相当于 uname -n)
\o 显示域名
\r 显示 Kernel 内核版本号(相当于 uname -r)
\t 显示当前时间
\s 显示当前操作系统名称
\u 显示当前登录用户的编号
\U 显示当前登录用户的编号和用户
\v 显示当前操作系统的版本日期