CentOS 7 系统结构

CentOS 7 是一款基于 Red Hat Enterprise Linux (RHEL) 7 源代码编译的开源操作系统,广泛应用于服务器和企业级环境,其系统结构设计兼顾了稳定性、安全性和可扩展性,采用模块化分层架构,便于管理和维护,以下从核心组件、文件系统、服务管理、网络配置及安全机制等方面,详细解析 CentOS 7 的系统结构。
核心组件与启动流程
CentOS 7 的核心组件包括内核(Kernel)、初始化系统(Systemd)以及核心软件包,内核是操作系统的核心,负责硬件资源管理、进程调度及系统调用,CentOS 7 默认使用 Linux 3.10 内核,支持最新的硬件特性。
初始化系统 Systemd 取代了传统的 SysVinit,成为 CentOS 7 的默认启动管理器,Systemd 采用并行启动机制,显著提升了系统启动速度,其核心单元(Unit)包括服务(.service)、目标(.target)、挂载点(.mount)等,通过 systemctl 命令统一管理。
启动流程分为 BIOS/UEFI 引导、加载内核、初始化 RAM 磁盘(initramfs)、启动 Systemd 及加载多用户目标(multi-user.target)等阶段,Systemd 的目标(target)取代了传统的运行级别(runlevel),graphical.target 对应图形界面,multi-user.target 对应命令行模式。
文件系统层次结构
CentOS 7 遵循 Filesystem Hierarchy Standard (FHS) 标准,文件系统层次清晰,便于用户和程序定位资源,根目录(/)下包含以下关键子目录:
- /bin 和 /sbin:存放 essential 的二进制命令,前者供所有用户使用,后者多用于系统管理。
- /etc:存储系统配置文件,如网络配置(/etc/sysconfig/network-scripts/)、服务配置(/etc/systemd/system/)。
- /usr:用户程序和文件的主目录,包含可执行文件(/usr/bin/)、库文件(/usr/lib/)及文档(/usr/share/)。
- /var:存放经常变化的文件,如日志(/var/log/)、缓存(/var/cache/)和邮件队列(/var/spool/mail/)。
- /home 和 /root:分别存储普通用户和 root 用户的家目录。
- /boot:启动文件,如内核镜像(vmlinuz)和初始 RAM 磁盘(initramfs)。
CentOS 7 默认使用 XFS 文件系统,支持大文件和高性能,适用于生产环境。

服务管理(Systemd)
Systemd 是 CentOS 7 的核心服务管理工具,通过 systemctl 命令实现服务的启动、停止、启用及状态查询。
systemctl start httpd.service启动 Apache 服务。systemctl enable nginx.service设置 Nginx 开机自启。systemctl status firewalld.service查看 Firewalld 防火墙状态。
Systemd 的依赖关系管理确保服务按正确顺序启动,网络服务(network.service)需在依赖它的服务(如 httpd.service)之前启动,日志服务(journald)集中记录所有系统和服务日志,可通过 journalctl 命令查看。
网络配置
CentOS 7 的网络配置工具从传统的 ifconfig 和 network.service 演进为 ip 命令和 NetworkManager 服务,NetworkManager 提供动态网络管理,支持有线、无线及 VPN 连接。
静态 IP 配置通过 /etc/sysconfig/network-scripts/ 目录下的 ifcfg-* 文件实现,配置 eth0 接口的静态 IP:
DEVICE=eth0
BOOTPROTO=static
ONBOOT=yes
IPADDR=192.168.1.100
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
DNS1=8.8.8.8 配置完成后,使用 systemctl restart network.service 重启网络服务。
防火墙方面,CentOS 7 默认使用 firewalld,支持区域(zone)和动态规则管理,允许 HTTP 流量:

firewall-cmd --permanent --add-service=http
firewall-cmd --reload 安全机制
CentOS 7 提供多层安全防护,包括 SELinux(Security-Enhanced Linux)、防火墙(firewalld)和用户权限管理。
SELinux 采用强制访问控制(MAC),通过策略(policy)限制进程和文件的访问权限,默认 enforcing 模式下,违规操作会被阻止,可通过 sestatus 查看状态,setenforce 0 临时关闭(不推荐生产环境使用)。
用户权限管理通过 sudo 和 PAM(Pluggable Authentication Modules)实现,sudo 允许普通用户以 root 权限执行特定命令,而 PAM 提供灵活的认证机制,如密码、指纹或双因素认证。
FAQs
Q1:如何查看 CentOS 7 的系统版本和内核信息?
A1:使用以下命令:
cat /etc/redhat-release查看系统版本(如 “CentOS Linux release 7.9.2009″)。uname -r查看内核版本(如 “3.10.0-1160.el7.x86_64″)。
Q2:CentOS 7 如何切换运行级别(目标)?
A2:通过 Systemd 的 target 切换:
- 命令行模式:
systemctl isolate multi-user.target。 - 图形界面模式:
systemctl isolate graphical.target。 - 开机默认目标可修改
/etc/systemd/system/default.target的软链接。
【版权声明】:本站所有内容均来自网络,若无意侵犯到您的权利,请及时与我们联系将尽快删除相关内容!
发表回复